public void Test() { var visitor = new PrintVisitor(); var e1 = new E1(); var r1 = e1.Accept(visitor); Assert.Equal("e1", r1); var e2 = new E2(); var r2 = e2.Accept(visitor); Assert.Equal("e1", r1); }