I am having trouble implementing an interface with C#:
public interface IFooable
{
public (IFooable left, IFooable right) FooWith(IFooable other);
}
And then in my concrete class, I have
class Concrete
{
public (Concrete left, Concrete right) FooWith(Concrete other)
{
return GoFooSomewhereElse(...);
}
}
But in my tests, the compiler tells me that Concrete
does not implement the FooWith function.
I don't really understand what is going on, since I am so new at C# and easily confused by the language!
I found similar questions (eg Why can't I override my interface methods?) but they did not solve my problem.