Why do i need to pass in the generics here?
Hey,
I have this code
and i want to use to probably like this
But it says i cannot the determine the types... why not?! they are clearly given..
I have this code
using GitManager.Domain.Models;
using GitManager.GitCLI.Commands.Parsing;
namespace GitManager.GitCLI.Commands
{
public record GitPullBranchCommandInput : IGitCommandInput
{
public string LocalPath { get; }
/// <summary>
/// When not specified, the current local checked out branch will be pulled.
/// </summary>
public string? Branch { get; }
public GitPullBranchCommandInput(string localPath, string? branch = null)
{
LocalPath = localPath;
Branch = branch;
}
}
public class GitPullBranchCommand : IGitCommand<string, GitPullBranchCommandInput>
{
private readonly IGitCommandStrategy _gitCommandStrategy;
public GitPullBranchCommand(IGitCommandStrategy gitCommandStrategy)
{
_gitCommandStrategy = gitCommandStrategy;
}
public async Task<string> ExecuteAsync(GitPullBranchCommandInput input)
{
//var command = "branch --list --all";
var command = "pull";
var result = await _gitCommandStrategy.ExecuteAsync(command, input.LocalPath);
return result;
}
}
}using GitManager.Domain.Models;
using GitManager.GitCLI.Commands.Parsing;
namespace GitManager.GitCLI.Commands
{
public record GitPullBranchCommandInput : IGitCommandInput
{
public string LocalPath { get; }
/// <summary>
/// When not specified, the current local checked out branch will be pulled.
/// </summary>
public string? Branch { get; }
public GitPullBranchCommandInput(string localPath, string? branch = null)
{
LocalPath = localPath;
Branch = branch;
}
}
public class GitPullBranchCommand : IGitCommand<string, GitPullBranchCommandInput>
{
private readonly IGitCommandStrategy _gitCommandStrategy;
public GitPullBranchCommand(IGitCommandStrategy gitCommandStrategy)
{
_gitCommandStrategy = gitCommandStrategy;
}
public async Task<string> ExecuteAsync(GitPullBranchCommandInput input)
{
//var command = "branch --list --all";
var command = "pull";
var result = await _gitCommandStrategy.ExecuteAsync(command, input.LocalPath);
return result;
}
}
}and i want to use to probably like this
Branch branch = await gitHandler.ExecuteAsync(new GitPullBranchCommandInput(""));Branch branch = await gitHandler.ExecuteAsync(new GitPullBranchCommandInput(""));But it says i cannot the determine the types... why not?! they are clearly given..