-
Notifications
You must be signed in to change notification settings - Fork 14
Expand file tree
/
Copy pathrascal.astub
More file actions
33 lines (24 loc) · 1.17 KB
/
rascal.astub
File metadata and controls
33 lines (24 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package org.rascalmpl.values.parsetrees.visitors;
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.INode;
import io.usethesource.vallang.type.Type;
import io.usethesource.vallang.visitors.IdentityVisitor;
import org.rascalmpl.exceptions.ImplementationError;
import org.rascalmpl.values.RascalValueFactory;
import org.rascalmpl.values.parsetrees.ITree;
import org.checkerframework.checker.nullness.qual.Nullable;
public abstract class TreeVisitor<E extends Throwable> extends IdentityVisitor<E> {
@Override
public @Nullable INode visitConstructor(IConstructor o) throws E;
public abstract @Nullable ITree visitTreeAppl(ITree arg) throws E;
public abstract @Nullable ITree visitTreeAmb(ITree arg) throws E;
public abstract @Nullable ITree visitTreeChar(ITree arg) throws E;
public abstract @Nullable ITree visitTreeCycle(ITree arg) throws E;
}
package org.rascalmpl.values.functions;
import io.usethesource.vallang.IExternalValue;
import io.usethesource.vallang.IValue;
import org.checkerframework.checker.nullness.qual.NonNull;
public interface IFunction extends IExternalValue {
default <T extends @NonNull IValue> T call(IValue... parameters) { }
}