public override void Accept(IFruitVisitor visitor) { if (visitor is IFruitVisitor <Banana> ) { ((IFruitVisitor <Banana>)visitor).Visit(this); } }
public abstract void Accept(IFruitVisitor visitor);
public void Accept(IFruitVisitor visitor) { visitor.Visit(this); }
protected override void AcceptInternal(IFruitVisitor visitor) { visitor.Visit(this); }
public override void Accept(IFruitVisitor visitor) { if (visitor is IFruitVisitor<Grape>) ((IFruitVisitor<Grape>)visitor).Visit(this); }
protected abstract void AcceptInternal(IFruitVisitor visitor);
public void Accept(IFruitVisitor visitor) { AcceptInternal(visitor); }