public static class ExternalVisitor.Constant<A> extends java.lang.Object implements ExternalVisitor<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.
ExternalVisitor.Constant<A>| Modifier and Type | Method and Description |
|---|---|
protected A |
getReturnValue() |
A |
onAnnotated(Expr base,
Expr tpe) |
A |
onApplication(Expr base,
Expr arg) |
A |
onAssert(Expr base) |
A |
onBuiltIn(java.lang.String name) |
A |
onClasspathImport(java.nio.file.Path path,
Expr.ImportMode mode,
byte[] hash) |
A |
onDate(int year,
int month,
int day) |
A |
onDouble(double value) |
A |
onEmptyList(Expr tpe) |
A |
onEnvImport(java.lang.String value,
Expr.ImportMode mode,
byte[] hash) |
A |
onFieldAccess(Expr base,
java.lang.String fieldName) |
A |
onIdentifier(java.lang.String name,
long index) |
A |
onIf(Expr predicate,
Expr thenValue,
Expr elseValue) |
A |
onInteger(java.math.BigInteger value) |
A |
onLambda(java.lang.String name,
Expr input,
Expr result) |
A |
onLet(java.lang.String name,
Expr type,
Expr value,
Expr body) |
A |
onLocalImport(java.nio.file.Path path,
Expr.ImportMode mode,
byte[] hash) |
A |
onMerge(Expr handlers,
Expr union,
Expr tpe) |
A |
onMissingImport(Expr.ImportMode mode,
byte[] hash) |
A |
onNatural(java.math.BigInteger value) |
A |
onNonEmptyList(java.lang.Iterable<Expr> values,
int size) |
A |
onNote(Expr base,
Source source) |
A |
onOperatorApplication(Operator operator,
Expr lhs,
Expr rhs) |
A |
onPi(java.lang.String name,
Expr input,
Expr result) |
A |
onProjection(Expr base,
java.lang.String[] fieldNames) |
A |
onProjectionByType(Expr base,
Expr tpe) |
A |
onRecord(java.lang.Iterable<java.util.Map.Entry<java.lang.String,Expr>> fields,
int size) |
A |
onRecordType(java.lang.Iterable<java.util.Map.Entry<java.lang.String,Expr>> fields,
int size) |
A |
onRemoteImport(java.net.URI url,
Expr using,
Expr.ImportMode mode,
byte[] hash) |
A |
onText(java.lang.String[] parts,
java.lang.Iterable<Expr> interpolated) |
A |
onTime(int hour,
int minute,
int second,
java.math.BigDecimal fractional) |
A |
onTimeZone(int minutes) |
A |
onToMap(Expr base,
Expr type) |
A |
onUnionType(java.lang.Iterable<java.util.Map.Entry<java.lang.String,Expr>> fields,
int size) |
A |
onWith(Expr base,
java.lang.String[] path,
Expr value) |
public Constant(A value)
protected A getReturnValue()
public A onNote(Expr base, Source source)
onNote in interface ExternalVisitor<A>public A onNatural(java.math.BigInteger value)
onNatural in interface ExternalVisitor<A>public A onInteger(java.math.BigInteger value)
onInteger in interface ExternalVisitor<A>public A onDouble(double value)
onDouble in interface ExternalVisitor<A>public A onDate(int year, int month, int day)
onDate in interface ExternalVisitor<A>public A onTime(int hour, int minute, int second, java.math.BigDecimal fractional)
onTime in interface ExternalVisitor<A>public A onTimeZone(int minutes)
onTimeZone in interface ExternalVisitor<A>public A onBuiltIn(java.lang.String name)
onBuiltIn in interface ExternalVisitor<A>public A onIdentifier(java.lang.String name, long index)
onIdentifier in interface ExternalVisitor<A>public A onLambda(java.lang.String name, Expr input, Expr result)
onLambda in interface ExternalVisitor<A>public A onPi(java.lang.String name, Expr input, Expr result)
onPi in interface ExternalVisitor<A>public A onLet(java.lang.String name, Expr type, Expr value, Expr body)
onLet in interface ExternalVisitor<A>public A onText(java.lang.String[] parts, java.lang.Iterable<Expr> interpolated)
onText in interface ExternalVisitor<A>public A onNonEmptyList(java.lang.Iterable<Expr> values, int size)
onNonEmptyList in interface ExternalVisitor<A>public A onEmptyList(Expr tpe)
onEmptyList in interface ExternalVisitor<A>public A onRecord(java.lang.Iterable<java.util.Map.Entry<java.lang.String,Expr>> fields, int size)
onRecord in interface ExternalVisitor<A>public A onRecordType(java.lang.Iterable<java.util.Map.Entry<java.lang.String,Expr>> fields, int size)
onRecordType in interface ExternalVisitor<A>public A onUnionType(java.lang.Iterable<java.util.Map.Entry<java.lang.String,Expr>> fields, int size)
onUnionType in interface ExternalVisitor<A>public A onFieldAccess(Expr base, java.lang.String fieldName)
onFieldAccess in interface ExternalVisitor<A>public A onProjection(Expr base, java.lang.String[] fieldNames)
onProjection in interface ExternalVisitor<A>public A onProjectionByType(Expr base, Expr tpe)
onProjectionByType in interface ExternalVisitor<A>public A onApplication(Expr base, Expr arg)
onApplication in interface ExternalVisitor<A>public A onOperatorApplication(Operator operator, Expr lhs, Expr rhs)
onOperatorApplication in interface ExternalVisitor<A>public A onIf(Expr predicate, Expr thenValue, Expr elseValue)
onIf in interface ExternalVisitor<A>public A onAnnotated(Expr base, Expr tpe)
onAnnotated in interface ExternalVisitor<A>public A onAssert(Expr base)
onAssert in interface ExternalVisitor<A>public A onMerge(Expr handlers, Expr union, Expr tpe)
onMerge in interface ExternalVisitor<A>public A onToMap(Expr base, Expr type)
onToMap in interface ExternalVisitor<A>public A onWith(Expr base, java.lang.String[] path, Expr value)
onWith in interface ExternalVisitor<A>public A onMissingImport(Expr.ImportMode mode, byte[] hash)
onMissingImport in interface ExternalVisitor<A>public A onEnvImport(java.lang.String value, Expr.ImportMode mode, byte[] hash)
onEnvImport in interface ExternalVisitor<A>public A onLocalImport(java.nio.file.Path path, Expr.ImportMode mode, byte[] hash)
onLocalImport in interface ExternalVisitor<A>public A onClasspathImport(java.nio.file.Path path, Expr.ImportMode mode, byte[] hash)
onClasspathImport in interface ExternalVisitor<A>public A onRemoteImport(java.net.URI url, Expr using, Expr.ImportMode mode, byte[] hash)
onRemoteImport in interface ExternalVisitor<A>