Class InputChain
- All Implemented Interfaces:
AST,PipelineAST
Represents a chain of input that is being sent as input to a step as a parameter, e.g.
join(rhs: <- input(...) -> ...)
-
Constructor Summary
ConstructorsConstructorDescriptionInputChain(Token inputToken, StepChain chain) Creates a newInputChaininstance. -
Method Summary
Modifier and TypeMethodDescription<T,R> R accept(PipelineVisitor<T, R> visitor, T data) protected voidappendSource(StringBuilder appendTo) Implementers extend this to append their source to the given string builder.protected static voidappendSource(AST ast, StringBuilder appendTo) Helper method for appending the source of another ast element to a string builder, efficiently if possible.protected voidappendString(StringBuilder appendTo) Append a simplified string representation to the builder.booleangetChain()The<-tokeninthashCode()final StringtoSource()final StringtoString()Returns a simplified view of the ast in a source-like fashion, but with a lot of details left out for concisenessMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface nz.org.riskscape.rl.ast.AST
isA, switchType, toSource
-
Constructor Details
-
InputChain
Creates a new
InputChaininstance.- Parameters:
inputToken- The<-tokenchain-
-
-
Method Details
-
getBoundary
- Specified by:
getBoundaryin interfaceAST- Returns:
- a pair of tokens that represent the start and end of this expression, to be used when giving users information about where errors have occurred. If the expression has been rebuilt then the boundary may be empty or it may be from the original AST. Intended for use in problems to trace errors back to their source.
-
getStepReferences
- Returns:
- a list of all the references to steps in the pipeline made from this input chain, e.g will return the foo
step reference declared within the rhs of the join in
input() as foo ... join(rhs: <- foo -> group())
-
accept
- Specified by:
acceptin interfacePipelineAST
-
appendSource
Implementers extend this to append their source to the given string builder. Done via string builder to encourage a more efficient implementation than is possible with concatenating multiple toString calls that typically contruct a string builder anyway.
-
equals
-
hashCode
public int hashCode() -
getAsStepReference
- Returns:
- a step reference if that is the only item in this chain, e.g. the whole thing is just a reference to another step in the pipeline.
-
getInputToken
The
<-token -
getChain
-
appendSource
Helper method for appending the source of another ast element to a string builder, efficiently if possible.
-
toString
Returns a simplified view of the ast in a source-like fashion, but with a lot of details left out for conciseness
-
appendString
Append a simplified string representation to the builder. Default implementation uses appendSource. Subclasses can override to provide a more concise representation.
-
toSource
-