Uses of Interface
dev.civl.abc.ast.node.IF.expression.ExpressionNode
Packages that use ExpressionNode
Package
Description
The analysis module provides various algorithms which
analyze an AST, leaving behind information about the AST.
Submodule ast.conversion provides classes for representing
to C's "implicit conversions".
Submodule ast.node defines every kind of
node in an AST.
The ast.node.compound submodule
defines nodes and related classes for representing
compound initializers.
The ast.node.declaration submodule defines nodes
and other object deadling with declarations in a program.
The ast.node.expression submodule defines AST nodes
for representing expressions in a program.
The ast.node.label submodule defines AST nodes for representing labels
in a program, including ordinary labels, and the
case and default
labels used in switch statements.The ast.node.omp submodule defines AST nodes for representing
OpenMP constructs, which are specified in
omp pragmas.The ast.node.statement submodule defines AST
nodes for representing statements in a program.
The ast.node.type submodule defines AST nodes
for representing type constructs in a program.
The ast.type submodule defines the (abstract) types
that can be specified in a program.
The ast.value submodule defines classes for representing
constant values that can occur in a program, such as numeric literals,
characters, strings, pointer constants, and so on.
-
Uses of ExpressionNode in dev.civl.abc.analysis.IF
Methods in dev.civl.abc.analysis.IF that return types with arguments of type ExpressionNodeMethods in dev.civl.abc.analysis.IF with parameters of type ExpressionNodeModifier and TypeMethodDescriptionvoidFocusAnalysisData.addProtectedMemExpr(String tag, ExpressionNode expr) -
Uses of ExpressionNode in dev.civl.abc.analysis.pointsTo.IF
Methods in dev.civl.abc.analysis.pointsTo.IF that return ExpressionNodeModifier and TypeMethodDescriptionAssignStoreExprIF.store()eitherIdentifierExpressionNodeor an expression node represening string literal or allocation.Methods in dev.civl.abc.analysis.pointsTo.IF with parameters of type ExpressionNodeModifier and TypeMethodDescriptionInsensitiveFlowFactory.assignOffset(ExpressionNode offset, boolean positive) creates anAssignOffsetIFfrom an ExpressionNode of integer typeInsensitiveFlowFactory.assignStoreExpr(ExpressionNode store) creates an abstract object representing an allocation or a string literal -
Uses of ExpressionNode in dev.civl.abc.ast.conversion.IF
Methods in dev.civl.abc.ast.conversion.IF with parameters of type ExpressionNodeModifier and TypeMethodDescriptionConversionFactory.assignmentConversion(Configuration config, ExpressionNode rhs, Type newType) Given (1) the processed right hand side of an assignment expression and (2) the type of the assignment expression (i.e., the adjusted type of the left hand side), returns the conversion from the right-hand type to the assignment type.ConversionFactory.assignmentConversion(Configuration config, ExpressionNode rhs, Type newType, boolean ignoreQualifier) Given (1) the processed right hand side of an assignment expression and (2) the type of the assignment expression (i.e., the adjusted type of the left hand side), returns the conversion from the right-hand type to the assignment type.booleanConversionFactory.isNullPointerConstant(ExpressionNode node) Is this expression a null pointer constant? Prerequisite: node has already been processed.ConversionFactory.memConversion(ExpressionNode expr) Returns the mem conversion which converts the type of the givenexprto aMemType. -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF
Methods in dev.civl.abc.ast.node.IF that return ExpressionNodeModifier and TypeMethodDescriptionStaticAssertionNode.getExpression()Gets the constant expression argument from this static assertion.GenericAssociationNode.getExpressionNode()NodeFactory.newHereNode(Source source) Creates a new constant expression node representing$here.NodeFactory.newProcnullNode(Source source) Constructs a new node representing an occurrence of the CIVL-C "null process" constant, written$proc_null.NodeFactory.newResultNode(Source source) Constructs a new node representing an occurrence of the CIVL-C expression "$result", used in function constracts to represent the result returned by the function.NodeFactory.newRootNode(Source source) Creates a new constant expression node representing$root.NodeFactory.newSelfNode(Source source) Constructs a new node representing an occurrence of the CIVL-C "self" process constant, written "$self".Methods in dev.civl.abc.ast.node.IF with parameters of type ExpressionNodeModifier and TypeMethodDescriptionNodeFactory.getConstantValue(ExpressionNode expression) If the expression can be evaluated statically to yield a constant value, this method returns that value, else it returns null.NodeFactory.newArrayDesignatorNode(Source source, ExpressionNode index) Constructs a new array designator node.NodeFactory.newArrayLambdaNode(Source source, TypeNode type, SequenceNode<PairNode<SequenceNode<VariableDeclarationNode>, ExpressionNode>> boundVariableDeclarationList, ExpressionNode restriction, ExpressionNode expression) Constructs a new array lambda expression.NodeFactory.newArrayLambdaNode(Source source, TypeNode type, List<VariableDeclarationNode> boundVariableDeclarationList, ExpressionNode restriction, ExpressionNode expression) Constructs a new array lambda expression.NodeFactory.newArrayTypeNode(Source source, TypeNode elementType, ExpressionNode extent) Constructs and returns a new array type node.NodeFactory.newArrayTypeNode(Source source, TypeNode elementType, ExpressionNode extent, ExpressionNode startIndex) Constructs and returns a new array type node.NodeFactory.newArrowNode(Source source, ExpressionNode structurePointer, IdentifierNode fieldName) Constructs a new node for an "arrow" expression, used in C for structure or union field navigation starting from a pointer, as inmyStructPtr->field.NodeFactory.newAssumesNode(Source source, ExpressionNode predicate) Creates a newassumesclause nodeNodeFactory.newCaseLabelDeclarationNode(Source source, ExpressionNode constantExpression, StatementNode statement) Constructs a new case-labeled declaration node.NodeFactory.newCastNode(Source source, TypeNode type, ExpressionNode argument) Constructs a new cast node.NodeFactory.newCivlForNode(Source source, boolean isParallel, DeclarationListNode variables, ExpressionNode domain, StatementNode body, SequenceNode<ContractNode> loopContract) Creates a new instance of the CIVL$foror$parfornode.NodeFactory.newDependsNode(Source source, ExpressionNode condition, SequenceNode<DependsEventNode> eventList) Constructs a new node representing a CIVL-C$dependscontract clause.NodeFactory.newDerivativeExpressionNode(Source source, ExpressionNode function, SequenceNode<PairNode<IdentifierExpressionNode, IntegerConstantNode>> partials, SequenceNode<ExpressionNode> arguments) Constructs a new CIVL-C derivative expression, used to represent the (partial) derivative of a function with respect to any number of variables, evaluated at a point.NodeFactory.newDoLoopNode(Source source, ExpressionNode condition, StatementNode body, SequenceNode<ContractNode> contracts) Constructs a new node representing ado...whileloop.NodeFactory.newDomainTypeNode(Source source, ExpressionNode dimension) Returns a new instance of the domain type node with given integer dimension; this is the CIVL-C type$domain(n), wherenis the domain dimension.NodeFactory.newDotNode(Source source, ExpressionNode structure, IdentifierNode fieldName) Constructs a new node for a "dot" expression, used in C for structure or union field navigation, as inmyStruct.field.NodeFactory.newEnsuresNode(Source source, ExpressionNode expression) Constructs a new node representing a CIVL-C$ensurescontract clause.NodeFactory.newEnumeratorDeclarationNode(Source source, IdentifierNode name, ExpressionNode value) Creates new declaration of an enumerator, which is an element inside of a Cenumdefinition.NodeFactory.newExpressionStatementNode(ExpressionNode expression) Constructs a new expression statement node.NodeFactory.newExtendedQuantifiedExpressionNode(Source source, ExtendedQuantifiedExpressionNode.ExtendedQuantifier quant, ExpressionNode lo, ExpressionNode hi, ExpressionNode function) Creates a new extended quantified expression node.NodeFactory.newFieldDeclarationNode(Source source, IdentifierNode name, TypeNode type, ExpressionNode bitFieldWidth) Consructs a new field declaration node which also includes a "bit width" argument.NodeFactory.newFocusOrderedNode(Source source, TokenFactory tokenFactory, String focusTag, OperatorNode operator, RegularRangeNode range, ExpressionNode expr) NodeFactory.newForLoopNode(Source source, ForLoopInitializerNode initializer, ExpressionNode condition, ExpressionNode incrementer, StatementNode body, SequenceNode<ContractNode> contracts) Constructs a newforloop node.NodeFactory.newFunctionCallNode(Source source, ExpressionNode function, List<ExpressionNode> arguments, SequenceNode<ExpressionNode> scopeList) Constructs a new function call node.NodeFactory.newFunctionCallNode(Source source, ExpressionNode function, List<ExpressionNode> contextArguments, List<ExpressionNode> arguments, SequenceNode<ExpressionNode> scopeList) Constructs a new kernel function call node.NodeFactory.newGenericAssociationNode(Source source, TypeNode typeLabel, ExpressionNode associatedExpression) Constructs a new generic association node which acts as a binding between a type node and an expression for the purposes of a generic selection nodeNodeFactory.newGenericSelectionNode(Source source, ExpressionNode controllingExpression, ExpressionNode defaultExpression, SequenceNode<GenericAssociationNode> genericAssociationList) Constructs a new generic selection node, used to select an expression to evaluate at compile time based on the type of the controlling expression.NodeFactory.newGuardNode(Source source, ExpressionNode expression) Constructs a new node representing a CIVL-C$guardcontract clause.NodeFactory.newIfNode(Source source, ExpressionNode condition, StatementNode trueBranch) Creates newifstatement node when there is no false ("else") branch.NodeFactory.newIfNode(Source source, ExpressionNode condition, StatementNode trueBranch, StatementNode falseBranch) Creates a newifstatement node.NodeFactory.newInvariantNode(Source source, boolean isLoopInvariant, ExpressionNode expression) Creates a newinvariantclause nodeNodeFactory.newLambdaNode(Source source, VariableDeclarationNode boundVariableDeclaration, ExpressionNode expression) Constructs a new lambda expression with a free (no restriction on the bound variable) variable.NodeFactory.newLambdaNode(Source source, VariableDeclarationNode boundVariableDeclaration, ExpressionNode restriction, ExpressionNode expression) Constructs a new lambda expression with restriction on the bound variable.NodeFactory.newObjectofNode(Source source, ExpressionNode operand) Creates a new$object_ofnodeNodeFactory.newOperatorNode(Source source, OperatorNode.Operator operator, ExpressionNode argument) Convenience method for constructing new unary operator node; equivalent to invokingNodeFactory.newOperatorNode(Source, Operator, ExpressionNode)on the singleton list containingargument.NodeFactory.newOperatorNode(Source source, OperatorNode.Operator operator, ExpressionNode arg0, ExpressionNode arg1) Convenience method for constructing new binary operator node; equivalent to invokingNodeFactory.newOperatorNode(Source, Operator, ExpressionNode)on the list consisting ofarg0andarg1.NodeFactory.newOperatorNode(Source source, OperatorNode.Operator operator, ExpressionNode arg0, ExpressionNode arg1, ExpressionNode arg2) Convenience method for constructing new ternary operator node; equivalent to invokingNodeFactory.newOperatorNode(Source, Operator, ExpressionNode)on the list consisting ofarg0,arg1, andarg2.NodeFactory.newPredicateNode(Source source, IdentifierNode identifier, SequenceNode<VariableDeclarationNode> parameters, ExpressionNode body) Creates a newPredicateNodefor ACSL predicatesNodeFactory.newQuantifiedExpressionNode(Source source, QuantifiedExpressionNode.Quantifier quantifier, SequenceNode<PairNode<SequenceNode<VariableDeclarationNode>, ExpressionNode>> boundVariableDeclarationList, ExpressionNode restriction, ExpressionNode expression, SequenceNode<PairNode<ExpressionNode, ExpressionNode>> intervalSequence) Constructs a new quantified expression.NodeFactory.newRegionofNode(Source source, ExpressionNode operand) Creates a new$region_ofnodeNodeFactory.newRegularRangeNode(Source source, ExpressionNode low, ExpressionNode high) Constructs a new CIVL-C regular range expression, which has the formlo ..NodeFactory.newRegularRangeNode(Source source, ExpressionNode low, ExpressionNode high, ExpressionNode step) Constructs a new CIVL-C regular range expression, which has the formlo ..NodeFactory.newRemoteOnExpressionNode(Source source, ExpressionNode left, ExpressionNode right) Constructs a remote expression node, representing an expression of the formproc_expr@x.NodeFactory.newRequiresNode(Source source, ExpressionNode expression) Constructs a new node representing a CIVL-C$requirescontract clause.NodeFactory.newReturnNode(Source source, ExpressionNode argument) Creates a newreturnstatement node.NodeFactory.newScopeOfNode(Source source, ExpressionNode argument) Creates a new expression node representing$scopeof(expr).NodeFactory.newStaticAssertionNode(Source source, ExpressionNode expression, StringLiteralNode message) Creates a new C11 static assertion node.NodeFactory.newSwitchNode(Source source, ExpressionNode condition, StatementNode body) Constructs a new node representing a Cswitchstatement.NodeFactory.newTypeofNode(Source source, ExpressionNode expression) creates a new typeof node (GNU C extension)NodeFactory.newUpdateNode(Source source, ExpressionNode collator, FunctionCallNode call) Create a newUpdateNodeNodeFactory.newWhenNode(Source source, ExpressionNode guard, StatementNode body) Creates a new node representing a CIVL-C$whennode, used to represent a guarded command.NodeFactory.newWhileLoopNode(Source source, ExpressionNode condition, StatementNode body, SequenceNode<ContractNode> contracts) Constructs a new node representing awhileloop.voidNodeFactory.setConstantValue(ExpressionNode expression, Value value) If for some reason you know what the constant value of a node is supposed to be, tell it by invoking this method.Method parameters in dev.civl.abc.ast.node.IF with type arguments of type ExpressionNodeModifier and TypeMethodDescriptionNodeFactory.newAllocationNode(Source source, boolean isAllocates, SequenceNode<ExpressionNode> memoryList) Creates a new allocation node, which represents either anallocatesorfreesclause.NodeFactory.newArrayLambdaNode(Source source, TypeNode type, SequenceNode<PairNode<SequenceNode<VariableDeclarationNode>, ExpressionNode>> boundVariableDeclarationList, ExpressionNode restriction, ExpressionNode expression) Constructs a new array lambda expression.NodeFactory.newAssignsNode(Source source, SequenceNode<ExpressionNode> expressionList) Constructs a new node representing an ACSLassignscontract clause.NodeFactory.newCallEventNode(Source source, IdentifierExpressionNode function, SequenceNode<ExpressionNode> args) Creates a new\callevent nodeNodeFactory.newFocusLoopNode(Source source, TokenFactory tokenFactory, String focusTag, SequenceNode<ExpressionNode> tagWindow, SequenceNode<ExpressionNode> memoryList) NodeFactory.newFunctionCallNode(Source source, ExpressionNode function, List<ExpressionNode> arguments, SequenceNode<ExpressionNode> scopeList) Constructs a new function call node.NodeFactory.newFunctionCallNode(Source source, ExpressionNode function, List<ExpressionNode> arguments, SequenceNode<ExpressionNode> scopeList) Constructs a new function call node.NodeFactory.newFunctionCallNode(Source source, ExpressionNode function, List<ExpressionNode> contextArguments, List<ExpressionNode> arguments, SequenceNode<ExpressionNode> scopeList) Constructs a new kernel function call node.NodeFactory.newFunctionCallNode(Source source, ExpressionNode function, List<ExpressionNode> contextArguments, List<ExpressionNode> arguments, SequenceNode<ExpressionNode> scopeList) Constructs a new kernel function call node.NodeFactory.newMemoryEventNode(Source source, MemoryEventNode.MemoryEventNodeKind kind, SequenceNode<ExpressionNode> memoryList) creates a new memory event node, which could be either\read,writeorreach.NodeFactory.newOperatorNode(Source source, OperatorNode.Operator operator, List<ExpressionNode> arguments) Constructs a new operator expression node using one of the standard operators provided in the enumerated typeOperatorNode.Operator.NodeFactory.newQuantifiedExpressionNode(Source source, QuantifiedExpressionNode.Quantifier quantifier, SequenceNode<PairNode<SequenceNode<VariableDeclarationNode>, ExpressionNode>> boundVariableDeclarationList, ExpressionNode restriction, ExpressionNode expression, SequenceNode<PairNode<ExpressionNode, ExpressionNode>> intervalSequence) Constructs a new quantified expression.NodeFactory.newReadsNode(Source source, SequenceNode<ExpressionNode> expressionList) Constructs a new node representing an ACSLreadscontract clause.NodeFactory.newTypedefNameNode(IdentifierNode name, SequenceNode<ExpressionNode> scopeList) Returns a new instance of a typedef name node. -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.acsl
Subinterfaces of ExpressionNode in dev.civl.abc.ast.node.IF.acslModifier and TypeInterfaceDescriptioninterfaceThis represents an ACSL extended quantification expression.interfaceConstant$nothing, argument of$assigns / $readscontract clauses.interfaceThis represents a$object_ofof$region_ofexpression.Methods in dev.civl.abc.ast.node.IF.acsl that return ExpressionNodeModifier and TypeMethodDescriptionExtendedQuantifiedExpressionNode.function()return the functionEnsuresNode.getExpression()An expression of boolean type which is the post-conditionGuardsNode.getExpression()Gets the boolean expression of this guard.InvariantNode.getExpression()Returns the expression of this invariantRequiresNode.getExpression()Gets the boolean condition which is the pre-condition.PredicateNode.getExpressionBody()the body expression of the predicateAssumesNode.getPredicate()returns the predicate of thisassumesclause.ExtendedQuantifiedExpressionNode.higher()return the higher boundExtendedQuantifiedExpressionNode.lower()return the lower boundObjectOrRegionOfNode.operand()The operand, which has pointer typeMethods in dev.civl.abc.ast.node.IF.acsl that return types with arguments of type ExpressionNodeModifier and TypeMethodDescriptionCallEventNode.arguments()the arguments of the function callFocusLoopTransformNode.getFocusWindow()AssignsOrReadsNode.getMemoryList()Gets the list of memory associated with this node.FocusLoopTransformNode.getMemoryList()MemoryEventNode.getMemoryList()AllocationNode.memoryList()Returns the list of memory units associated with this allocation clause. -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.compound
Methods in dev.civl.abc.ast.node.IF.compound that return ExpressionNodeModifier and TypeMethodDescriptionScalarLiteralObject.getExpression()Returns the expression corrresponding to this scalar literal object.ArrayDesignatorNode.getIndex()Gets the constant expression which yields the index to initialize.Methods in dev.civl.abc.ast.node.IF.compound with parameters of type ExpressionNodeModifier and TypeMethodDescriptionvoidArrayDesignatorNode.setIndex(ExpressionNode expression) Sets the index expression. -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.declaration
Methods in dev.civl.abc.ast.node.IF.declaration that return ExpressionNodeModifier and TypeMethodDescriptionFieldDeclarationNode.getBitFieldWidth()Returns the bit field width.FunctionDefinitionNode.getLogicDefinition()Pre-condition: call toFunctionDeclarationNode.isLogicFunction()returns true.EnumeratorDeclarationNode.getValue()Each enumerator in an enumeration type definition may have an optional constant value specified.Methods in dev.civl.abc.ast.node.IF.declaration that return types with arguments of type ExpressionNodeModifier and TypeMethodDescriptionVariableDeclarationNode.constantAlignmentSpecifiers()An object declaration may contain any number of alignment specifiers.AbstractFunctionDefinitionNode.getIntervals()Returns the sequence of interval whose Cartesian product defines the domain on which the function is differentiable.AbstractFunctionDefinitionNode.getIntervals()Returns the sequence of interval whose Cartesian product defines the domain on which the function is differentiable.Methods in dev.civl.abc.ast.node.IF.declaration with parameters of type ExpressionNodeModifier and TypeMethodDescriptionvoidFieldDeclarationNode.setBitFieldWidth(ExpressionNode width) Sets the bit field width child node of this node to the given node.voidEnumeratorDeclarationNode.setValue(ExpressionNode value) Sets the optional value expression to the given expression node.Method parameters in dev.civl.abc.ast.node.IF.declaration with type arguments of type ExpressionNodeModifier and TypeMethodDescriptionvoidVariableDeclarationNode.setConstantAlignmentSpecifiers(SequenceNode<ExpressionNode> specifiers) Sets the node that will be returned by methodVariableDeclarationNode.constantAlignmentSpecifiers(). -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.expression
Subinterfaces of ExpressionNode in dev.civl.abc.ast.node.IF.expressionModifier and TypeInterfaceDescriptioninterfaceThe_Alignof(typename)operator.interfaceA CIVL-C array lambda expression, including three components, bound variable declaration list, (optional) restriction and expression.interfaceAn expression in which the operator is the C->(arrow) operator.interfaceA C cast expression has the form(typeName)expr.interfaceAn instance of this interface represents a single Unicode character occurring as a literal element in a C program.interfaceCompound literals are used to represent literal array, structure, and union values.interfaceA "constant" in the sense of the C11 Standard.interfaceA CIVL-C derivative expression is a function call to the partial derivative of an abstract function.interfaceA C expression in which the operator is the.(dot) operator, used to specify a member of a structure or union.interfaceAn enumeration constant node represents a use of an enumeration constant as an expression.interfaceA floating constant node represents an occurrence of a literal floating point number in a program.interfaceNode representing a function call.interfaceRepresents a C11 generic selection construct; see C11 Section 6.5.1.1.interfaceA node representing one of the two CIVL-C constant expressions of type$scope:$here(the dynamic scope in which the expression is evaluated), or$root(representing the root dynamic scope).interfaceRepresents the use of an identifier as an expression.interfaceAn integer constant node represents the occurrence of a literal integer constant in a program.interfaceA lambda function, including two/three components, a bound variable declaration (optional) and the lambda term.interfaceA node that represents an expression built using an operator.interfaceRepresents the CIVL-C null process constant$proc_null, which is a constant of type$proc.interfaceA CIVL-C quantified expression, including three components, bound variable declaration list, (optional) restriction and expression.interfaceRepresents a CIVL-C regular range expression, which has the formlo ..interfaceA CIVL-C remote expression is used to reference a variable in another process.interfaceRepresents the CIVL-C built-in variable$result, which represents the value returned by a function.interfaceRepresents a CIVL-C scope-of expression, which has the form$scopeof(lhs), wherelhsis a left-hand-side expression.interfaceRepresents the CIVL-C built-in variable$self, which has type$scopeand evaluates to the dynamic scope in which the variable is being evaluated.interfaceRepresents a Csizeof(...)expression.interfaceRepresents a CIVL-C$spawnexpression, which has the form$spawn f(e1,...,en).interfaceThis represents a GNU C statement expression.interfaceRepresents the CIVL-C null state constant$state_null, which is a constant of type$state.interfaceRepresents an occurrence of a string literal in a program, which is a string surrounded by double quotes.interfaceMethods in dev.civl.abc.ast.node.IF.expression that return ExpressionNodeModifier and TypeMethodDescriptionExpressionNode.copy()ArrayLambdaNode.expression()The body expression.QuantifiedExpressionNode.expression()The quantified expression.ScopeOfNode.expression()Returns the argument (lhs) of this scope-of expression.CastNode.getArgument()Returns the node representing the expression argument of this cast expression.DerivativeExpressionNode.getArgument(int index) Returns the index-th argument, indexed from 0.FunctionCallNode.getArgument(int index) Returns the index-th argument, indexed from 0.OperatorNode.getArgument(int index) Returns the index-th argument, indexed from 0.GenericSelectionNode.getAssociatedExpression(Type typeLabel) Gets the expression node associated to the typeNode representing a type compatible with typeLabel.FunctionCallNode.getContextArgument(int index) Returns the index-th execution context argument, indexed from 0.GenericSelectionNode.getControllingExpression()Returns the controlling expression.GenericSelectionNode.getDefaultAssociation()StatementExpressionNode.getExpression()The last thing in the compound statement should be an expression followed by a semicolon; the value of this subexpression serves as the value of the entire construct.RemoteOnExpressionNode.getForeignExpressionNode()Gets the expression node which represents the foreign expression.DerivativeExpressionNode.getFunction()The abstract function whose derivative is being taken.FunctionCallNode.getFunction()The function being called.RegularRangeNode.getHigh()Returns the upper bound argumenthi.RegularRangeNode.getLow()Returns the lower bound argumentlo.RemoteOnExpressionNode.getProcessExpression()Gets the expression which yields the process on which the foreign variable resides.RegularRangeNode.getStep()Returns the step argumentstepif it is present, else returnsnullDotNode.getStructure()Returns the node representing the left operand, which must have structure or union type.ArrowNode.getStructurePointer()Returns the node representing the left argument of the arrow operator.LambdaNode.lambdaFunction()ArrayLambdaNode.restriction()Boolean-valued expression assumed to hold when evaluating expression.LambdaNode.restriction()QuantifiedExpressionNode.restriction()Returns the predicate which specifies the restriction on the domain of the bound variables.Methods in dev.civl.abc.ast.node.IF.expression that return types with arguments of type ExpressionNodeModifier and TypeMethodDescriptionArrayLambdaNode.boundVariableList()the bound variable declaration list, which is a sequence node of pairs of variable declaration list and an optional expression that has domain type.QuantifiedExpressionNode.boundVariableList()the bound variable declaration list, which is a sequence node of pairs of variable declaration list and an optional expression that has domain type.FunctionCallNode.getArguments()Returns the arguments of this function call node, which is a sequence node of expressions.FunctionCallNode.getScopeList()Returns the actual scope parameter names used when instantiating a scope-generic functions, as infinvalid input: '<'s1,s2>(...)This will be deprecated soon.QuantifiedExpressionNode.intervalSequence()The following is an experimental field for the$uniformoperator.QuantifiedExpressionNode.intervalSequence()The following is an experimental field for the$uniformoperator.Methods in dev.civl.abc.ast.node.IF.expression with parameters of type ExpressionNodeModifier and TypeMethodDescriptionvoidCastNode.setArgument(ExpressionNode expression) Sets the value that will be returned byCastNode.getArgument().voidFunctionCallNode.setArgument(int index, ExpressionNode value) Sets the index-th argument.voidOperatorNode.setArgument(int index, ExpressionNode value) Sets the index-th argument of this expression to be the given expressionvoidFunctionCallNode.setContextArgument(int index, ExpressionNode value) Sets the index-th execution context argument.voidScopeOfNode.setExpression(ExpressionNode expr) Sets the argument of this scope-of expressionvoidRemoteOnExpressionNode.setForeignExpressionNode(ExpressionNode arg) Sets the identifier node argument.voidFunctionCallNode.setFunction(ExpressionNode function) Sets the value returned byFunctionCallNode.getFunction().voidRegularRangeNode.setHigh(ExpressionNode arg) Sets the upper bound argumenthivoidRegularRangeNode.setLow(ExpressionNode arg) Sets the lower bound argumentlovoidRemoteOnExpressionNode.setProcessExpression(ExpressionNode arg) Sets the process expressions argument.voidRegularRangeNode.setStep(ExpressionNode arg) Sets the step argumentstepvoidDotNode.setStructure(ExpressionNode structure) Sets the value returned byDotNode.getStructure().voidArrowNode.setStructurePointer(ExpressionNode structure) Sets the value that will be returned byArrowNode.getStructurePointer().Method parameters in dev.civl.abc.ast.node.IF.expression with type arguments of type ExpressionNodeModifier and TypeMethodDescriptionvoidFunctionCallNode.setArguments(SequenceNode<ExpressionNode> arguments) Updates the actual parameters of the function call node.voidFunctionCallNode.setContextArguments(SequenceNode<ExpressionNode> arguments) Updates the actual execution context parameters of the function call node. -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.label
Methods in dev.civl.abc.ast.node.IF.label that return ExpressionNodeModifier and TypeMethodDescriptionSwitchLabelNode.getExpression()If this is acaselabel, returns the constant expression following thecasekeyword; else returnsnull -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.omp
Methods in dev.civl.abc.ast.node.IF.omp that return ExpressionNodeModifier and TypeMethodDescriptionOmpForNode.chunkSize()Returns the chunk size.OmpParallelNode.ifClause()Returns the expression node ofif().OmpParallelNode.numThreads()Returns the expression node ofnum_threads().Methods in dev.civl.abc.ast.node.IF.omp with parameters of type ExpressionNodeModifier and TypeMethodDescriptionvoidOmpForNode.setChunsize(ExpressionNode chunkSize) Updates the chunk size of this loop construct.voidOmpParallelNode.setIfClause(ExpressionNode value) Updates the if-condition when the clauseif()is present.voidOmpParallelNode.setNumThreads(ExpressionNode value) Updates the number of threads when the clausenum_threads()is present. -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.statement
Methods in dev.civl.abc.ast.node.IF.statement that return ExpressionNodeModifier and TypeMethodDescriptionUpdateNode.getCollator()Get theExpressionNodewhich has the type $collator.IfNode.getCondition()The condition controlling this "if" statementLoopNode.getCondition()The condition which controls when to stay in or exit the loop.SwitchNode.getCondition()Returns the branch condition controlling this switch statement.CivlForNode.getDomain()Returns the iteration domain expression, which is the expression following the colon.ExpressionStatementNode.getExpression()ReturnNode.getExpression()The expression to return.WhenNode.getGuard()The guard: a boolean expression which must hold in order for the body to be executed.ForLoopNode.getIncrementer()Gets the incrementer part of this for loop node.Methods in dev.civl.abc.ast.node.IF.statement with parameters of type ExpressionNodeModifier and TypeMethodDescriptionvoidLoopNode.setCondition(ExpressionNode condition) Sets the loop condition for this loop node.voidForLoopNode.setIncrementer(ExpressionNode node) Sets the incrementer part of this for loop node. -
Uses of ExpressionNode in dev.civl.abc.ast.node.IF.type
Methods in dev.civl.abc.ast.node.IF.type that return ExpressionNodeModifier and TypeMethodDescriptionDomainTypeNode.getDimension()Returns the integer constant dimention of the domain if present, else returnsnullTypeofNode.getExpressionOperand()ArrayTypeNode.getExtent()The expression appearing in square brackets that specifies the length of the array.ArrayTypeNode.getStartIndex()The expression appearing in square brackets that specifies the starting index of the array.Methods in dev.civl.abc.ast.node.IF.type that return types with arguments of type ExpressionNodeModifier and TypeMethodDescriptionTypedefNameNode.getScopeList()Returns the actual scope parameters used in this instances of a scope-generic typedef.Methods in dev.civl.abc.ast.node.IF.type with parameters of type ExpressionNodeModifier and TypeMethodDescriptionvoidArrayTypeNode.setExtent(ExpressionNode extent) voidArrayTypeNode.setStartIndex(ExpressionNode startIndex) -
Uses of ExpressionNode in dev.civl.abc.ast.type.IF
Methods in dev.civl.abc.ast.type.IF that return ExpressionNodeModifier and TypeMethodDescriptionArrayType.getVariableSize()The expression appearing in square brackets that specifies the length of the array, when that length is not a known constant.Methods in dev.civl.abc.ast.type.IF with parameters of type ExpressionNodeModifier and TypeMethodDescriptionTypeFactory.variableLengthArrayType(ObjectType elementType, ExpressionNode variableSize) Returns a complete array type in which the size expression cannot be evaluated to a known constant value. -
Uses of ExpressionNode in dev.civl.abc.ast.value.IF
Methods in dev.civl.abc.ast.value.IF with parameters of type ExpressionNodeModifier and TypeMethodDescriptionValueFactory.addressValue(ExpressionNode lhs) ValueFactory.evaluate(ExpressionNode constantExpression) Evaluates a constant expression.