1 2 3 4 5 6 7 8 9 10 11 12 13
package org.zwobble.couscous.ast; import org.zwobble.couscous.ast.visitors.NodeTransformer; public interface Receiver extends Node { <T> T accept(Mapper<T> mapper); Receiver transform(NodeTransformer transformer); interface Mapper<T> { T visit(ExpressionNode receiver); T visit(TypeName receiver); } }