aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/Receiver.java
blob: 0e0e07760f0330f1c8b0e471b6757d867057ba20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
package org.zwobble.couscous.ast;

import java.util.function.Function;

public interface Receiver extends Node {
    Receiver replaceExpressions(Function<ExpressionNode, ExpressionNode> replace);
    <T> T accept(Mapper<T> mapper);

    interface Mapper<T> {
        T visit(ExpressionNode receiver);
        T visit(TypeName receiver);
    }
}