public static class Visitor.Constant<A> extends Visitor.NoPrepareEvents<A>
This is a convenience class designed to help with implementations that have a default value for most cases.
Note that by default the implementation sees through note layers.
Visitor.Constant<A>, Visitor.Identity, Visitor.NoPrepareEvents<A>, Visitor.Property| Modifier and Type | Method and Description |
|---|---|
void |
bind(java.lang.String name,
Expr type) |
protected A |
getReturnValue() |
A |
onAnnotated(A base,
A type) |
A |
onApplication(A base,
java.util.List<A> args) |
A |
onAssert(A base) |
A |
onBuiltIn(Expr self,
java.lang.String value) |
A |
onClasspathImport(java.nio.file.Path path,
Expr.ImportMode mode,
byte[] hash) |
A |
onDouble(Expr self,
double value) |
A |
onEmptyList(A type) |
A |
onEnvImport(java.lang.String value,
Expr.ImportMode mode,
byte[] hash) |
A |
onFieldAccess(A base,
java.lang.String fieldName) |
A |
onIdentifier(Expr self,
java.lang.String value,
long index) |
A |
onIf(A predicate,
A thenValue,
A elseValue) |
A |
onInteger(Expr self,
java.math.BigInteger value) |
A |
onLambda(java.lang.String name,
A type,
A result) |
A |
onLet(java.util.List<Expr.LetBinding<A>> bindings,
A body) |
A |
onLocalImport(java.nio.file.Path path,
Expr.ImportMode mode,
byte[] hash) |
A |
onMerge(A handlers,
A union,
A type) |
A |
onMissingImport(Expr.ImportMode mode,
byte[] hash) |
A |
onNatural(Expr self,
java.math.BigInteger value) |
A |
onNonEmptyList(java.util.List<A> values) |
A |
onNote(A base,
Source source) |
A |
onOperatorApplication(Operator operator,
A lhs,
A rhs) |
A |
onPi(java.lang.String name,
A type,
A result) |
A |
onProjection(A base,
java.lang.String[] fieldNames) |
A |
onProjectionByType(A base,
A type) |
A |
onRecord(java.util.List<java.util.Map.Entry<java.lang.String,A>> fields) |
A |
onRecordType(java.util.List<java.util.Map.Entry<java.lang.String,A>> fields) |
A |
onRemoteImport(java.net.URI url,
A using,
Expr.ImportMode mode,
byte[] hash) |
A |
onText(java.lang.String[] parts,
java.util.List<A> interpolated) |
A |
onToMap(A base,
A type) |
A |
onUnionType(java.util.List<java.util.Map.Entry<java.lang.String,A>> fields) |
A |
onWith(A base,
java.lang.String[] path,
A value) |
flattenToMapLists, prepareAnnotated, prepareApplication, prepareAssert, prepareEmptyList, prepareFieldAccess, prepareIf, prepareLambda, prepareLet, prepareLetBinding, prepareMerge, prepareNonEmptyList, prepareNonEmptyListElement, prepareOperatorApplication, preparePi, prepareProjection, prepareProjectionByType, prepareProjectionByType, prepareRecord, prepareRecordField, prepareRecordType, prepareRecordTypeField, prepareRemoteImport, prepareText, prepareTextPart, prepareToMap, prepareUnionType, prepareUnionTypeField, prepareWith, prepareWithValue, sortFieldspublic Constant(A value)
protected A getReturnValue()
public void bind(java.lang.String name,
Expr type)
public A onLet(java.util.List<Expr.LetBinding<A>> bindings, A body)
public A onMissingImport(Expr.ImportMode mode, byte[] hash)
public A onEnvImport(java.lang.String value, Expr.ImportMode mode, byte[] hash)
public A onLocalImport(java.nio.file.Path path, Expr.ImportMode mode, byte[] hash)
public A onClasspathImport(java.nio.file.Path path, Expr.ImportMode mode, byte[] hash)
public A onRemoteImport(java.net.URI url, A using, Expr.ImportMode mode, byte[] hash)