java.lang.Object
de.grogra.xl.compiler.pattern.PatternBuilder
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Compilerstatic booleanprotected final PatternBuilderprotected final CompiletimeModelprotected final Typeprotected final ProblemReporterprotected final BlockScope -
Constructor Summary
ConstructorsConstructorDescriptionPatternBuilder(CompiletimeModel model, PatternBuilder parent, BlockScope scope, antlr.collections.AST pos) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAny(antlr.collections.AST label, antlr.collections.AST pos) voidaddBlock(Expression block, antlr.collections.AST pos) final SimplePatternDataaddClosedRelationPattern(antlr.collections.AST label, PatternWrapper pred, ArgumentDescription[] args, boolean swapInOut, antlr.collections.AST pos) addComposite(antlr.collections.AST label, PatternBuilder child, EdgeDirection direction, boolean optional, antlr.collections.AST pos) voidaddCondition(antlr.collections.AST label, Expression expr, antlr.collections.AST pos) addConstantEdge(antlr.collections.AST label, EdgeDirection direction, Type edgeClass, Serializable edge, antlr.collections.AST pos) voidaddEdge(antlr.collections.AST label, EdgeDirection direction, Expression term, antlr.collections.AST pos) voidaddEdgePattern(antlr.collections.AST label, PatternWrapper edge, ArgumentDescription[] args, EdgeDirection direction, antlr.collections.AST pos) voidaddExpression(antlr.collections.AST label, Expression expr, antlr.collections.AST pos) voidaddFolding(antlr.collections.AST id) voidaddGuard(antlr.collections.AST label, Expression guard, antlr.collections.AST pos) voidaddIndependentType(antlr.collections.AST label, Type type, antlr.collections.AST pos) final SimplePatternDataaddInPattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, antlr.collections.AST pos) voidaddInReference(Local term, antlr.collections.AST pos) final SimplePatternDataaddNodePattern(antlr.collections.AST label, PatternWrapper pred, ArgumentDescription[] args, antlr.collections.AST pos) final SimplePatternDataaddNodePattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, antlr.collections.AST pos) final SimplePatternDataaddOutPattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, antlr.collections.AST pos) voidaddOutReference(Local term, antlr.collections.AST pos) voidaddPathExpression(antlr.collections.AST label, Expression expr, boolean swapInOut, antlr.collections.AST pos) final SimplePatternDataaddPattern(antlr.collections.AST label, Pattern pred, ArgumentDescription[] args, antlr.collections.AST pos) protected final SimplePatternDataaddPattern(antlr.collections.AST label, Pattern pred, ArgumentDescription[] args, antlr.collections.AST pos, boolean join) voidaddRelation(antlr.collections.AST label, Expression expr, boolean swapInOut, antlr.collections.AST pos) final SimplePatternDataaddRelationPattern(antlr.collections.AST label, PatternWrapper pred, ArgumentDescription[] args, boolean swapInOut, antlr.collections.AST pos) final SimplePatternDataaddRelationPattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, boolean swapInOut, antlr.collections.AST pos) voidaddSeparation(antlr.collections.AST pos) voidaddStandardEdge(antlr.collections.AST label, EdgeDirection direction, int edgeType, antlr.collections.AST pos) voidaddStandardEdgeBetween(antlr.collections.AST left, antlr.collections.AST right, EdgeDirection direction, int edgeType, antlr.collections.AST pos) addTraversal(antlr.collections.AST label, PatternBuilder child, EdgeDirection direction, Expression min, Expression max, boolean addFolding, antlr.collections.AST pos) voidvoidaddVariableReference(Local term, antlr.collections.AST pos) voidaddWrappedType(antlr.collections.AST label, Type type, Expression wrapped, antlr.collections.AST pos) voidvoidbeginContext(antlr.collections.AST pos) voidbeginTree(antlr.collections.AST pos) voidvoidstatic final ExpressioncreateArgument(Type type) static final ExpressiondeclareAuxVariable(Type type) protected MethodScopedeclareRoutine(Expression expr, ObjectList termLocals, HashSet used, HashSet assigned) declareVariable(antlr.collections.AST name, Type type) declareWrapper(Local wrapped, Type type, antlr.collections.AST pos) booleanvoidendContext(antlr.collections.AST pos) voidendTree(antlr.collections.AST pos) Local[]getModel()getScope()protected void
-
Field Details
-
DEBUG
public static boolean DEBUG -
model
-
enclosing
-
scope
-
compiler
-
problems
-
nodeType
-
-
Constructor Details
-
PatternBuilder
public PatternBuilder(CompiletimeModel model, PatternBuilder parent, BlockScope scope, antlr.collections.AST pos)
-
-
Method Details
-
getQueryState
-
enclosesOrEquals
-
allowOpenEnds
public void allowOpenEnds() -
containsOut
public void containsOut() -
containsIn
public void containsIn() -
getModel
-
getScope
-
declareAuxVariable
-
declareWrapper
-
declareVariable
-
getDeclaredVariables
-
createCompositePattern
-
addInPattern
public final SimplePatternData addInPattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, antlr.collections.AST pos) -
addOutPattern
public final SimplePatternData addOutPattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, antlr.collections.AST pos) -
addNodePattern
public final SimplePatternData addNodePattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, antlr.collections.AST pos) -
addNodePattern
public final SimplePatternData addNodePattern(antlr.collections.AST label, PatternWrapper pred, ArgumentDescription[] args, antlr.collections.AST pos) -
addRelationPattern
public final SimplePatternData addRelationPattern(antlr.collections.AST label, BuiltInPattern pred, ArgumentDescription[] args, boolean swapInOut, antlr.collections.AST pos) -
addRelationPattern
public final SimplePatternData addRelationPattern(antlr.collections.AST label, PatternWrapper pred, ArgumentDescription[] args, boolean swapInOut, antlr.collections.AST pos) -
addClosedRelationPattern
public final SimplePatternData addClosedRelationPattern(antlr.collections.AST label, PatternWrapper pred, ArgumentDescription[] args, boolean swapInOut, antlr.collections.AST pos) -
addPattern
public final SimplePatternData addPattern(antlr.collections.AST label, Pattern pred, ArgumentDescription[] args, antlr.collections.AST pos) -
addPattern
protected final SimplePatternData addPattern(antlr.collections.AST label, Pattern pred, ArgumentDescription[] args, antlr.collections.AST pos, boolean join) -
getLastNodeType
-
addVariableReference
-
addInReference
-
addOutReference
-
addTraversal
public TraversalData addTraversal(antlr.collections.AST label, PatternBuilder child, EdgeDirection direction, Expression min, Expression max, boolean addFolding, antlr.collections.AST pos) -
addComposite
public CompositeData addComposite(antlr.collections.AST label, PatternBuilder child, EdgeDirection direction, boolean optional, antlr.collections.AST pos) -
addAny
public void addAny(antlr.collections.AST label, antlr.collections.AST pos) -
addSeparation
public void addSeparation(antlr.collections.AST pos) -
join
-
addStandardEdge
public void addStandardEdge(antlr.collections.AST label, EdgeDirection direction, int edgeType, antlr.collections.AST pos) -
addIndependentType
-
addStandardEdgeBetween
public void addStandardEdgeBetween(antlr.collections.AST left, antlr.collections.AST right, EdgeDirection direction, int edgeType, antlr.collections.AST pos) -
addConstantEdge
public SimplePatternData addConstantEdge(antlr.collections.AST label, EdgeDirection direction, Type edgeClass, Serializable edge, antlr.collections.AST pos) -
addEdge
public void addEdge(antlr.collections.AST label, EdgeDirection direction, Expression term, antlr.collections.AST pos) -
addEdgePattern
public void addEdgePattern(antlr.collections.AST label, PatternWrapper edge, ArgumentDescription[] args, EdgeDirection direction, antlr.collections.AST pos) -
addType
-
addWrappedType
public void addWrappedType(antlr.collections.AST label, Type type, Expression wrapped, antlr.collections.AST pos) -
addCondition
-
addGuard
-
createArgument
-
createTargetTypeArgument
-
declareRoutine
protected MethodScope declareRoutine(Expression expr, ObjectList termLocals, HashSet used, HashSet assigned) -
addRelation
public void addRelation(antlr.collections.AST label, Expression expr, boolean swapInOut, antlr.collections.AST pos) -
addBlock
-
addPathExpression
public void addPathExpression(antlr.collections.AST label, Expression expr, boolean swapInOut, antlr.collections.AST pos) -
addExpression
-
addFolding
public void addFolding(antlr.collections.AST id) -
beginTree
public void beginTree(antlr.collections.AST pos) -
endTree
public void endTree(antlr.collections.AST pos) -
beginContext
public void beginContext(antlr.collections.AST pos) -
endContext
public void endContext(antlr.collections.AST pos) -
getPredicates
-