Uses of Interface
dev.civl.abc.token.IF.Source
Packages that use Source
Package
Description
Submodule ast.node defines every kind of
node in an AST.
Module parse is used to parse a token stream and
produce an ANTLR tree representation of a C program.
Module token defines the various kinds of tokens and related
classes used by ABC.
-
Uses of Source in dev.civl.abc.ast.node.IF
Methods in dev.civl.abc.ast.node.IF that return SourceModifier and TypeMethodDescriptionASTNode.getSource()Returns the source object that locates the origin of this program construct in the original source code.Methods in dev.civl.abc.ast.node.IF with parameters of type SourceModifier and TypeMethodDescriptionNodeFactory.newAbstractFunctionDefinitionNode(Source source, IdentifierNode name, TypeNode type, SequenceNode<ContractNode> contract, int continuity, SequenceNode<PairNode<ExpressionNode, ExpressionNode>> intervals, StringLiteralNode attr) Creates a new CIVL abstract function definition.NodeFactory.newAlignOfNode(Source source, TypeNode type) Constructs a new "align-of" node.NodeFactory.newAllocationNode(Source source, boolean isAllocates, SequenceNode<ExpressionNode> memoryList) Creates a new allocation node, which represents either anallocatesorfreesclause.NodeFactory.newAnyactNode(Source source) Creates a new\anyactevent nodeNodeFactory.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.newAssignsNode(Source source, SequenceNode<ExpressionNode> expressionList) Constructs a new node representing an ACSLassignscontract clause.NodeFactory.newAssumesNode(Source source, ExpressionNode predicate) Creates a newassumesclause nodeNodeFactory.newAtomicStatementNode(Source statementSource, StatementNode body) Creates a new CIVL-C$atomicstatement node.NodeFactory.newAtomicTypeNode(Source source, TypeNode baseType) Constructs and returns a new atomic type node.NodeFactory.newBasicTypeNode(Source source, StandardBasicType.BasicTypeKind kind) Returns a new type node for a basic type.NodeFactory.newBehaviorNode(Source source, IdentifierNode name, SequenceNode<ContractNode> body) creates a behavior node.NodeFactory.newBooleanConstantNode(Source source, boolean value) Constructs a new node representing a CIVL-C boolean constant, "$true" or "$false".NodeFactory.newBreakNode(Source source) Creates a new node representing the Cbreakstatement, used in a loop orswitchbody to direct control to the location just after the loop orswitchconstruct.NodeFactory.newCallEventNode(Source source, IdentifierExpressionNode function, SequenceNode<ExpressionNode> args) Creates a new\callevent 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.newCharacterConstantNode(Source source, String representation, ExecutionCharacter character) Returns a new character constant node.NodeFactory.newChooseStatementNode(Source source, List<StatementNode> statements) Constructs a new node representing a CIVL-C$choosestatement.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.newCompletenessNode(Source source, boolean isComplete, SequenceNode<IdentifierNode> idList) creates a completeness clause node, which could becompleteordisjointNodeFactory.newCompoundInitializerNode(Source source, List<PairNode<DesignationNode, InitializerNode>> initList) Constructs new compound initializer node.NodeFactory.newCompoundLiteralNode(Source source, TypeNode typeNode, CompoundInitializerNode initializerList) Returns a new compound literal node.NodeFactory.newCompoundStatementNode(Source source, List<BlockItemNode> items) Constructs a new compound statement node.NodeFactory.newContinueNode(Source source) Creates a new node representing the Ccontinuestatement, used in a loop body to direct control to the next loop iteration.NodeFactory.newDefaultLabelDeclarationNode(Source source, StatementNode statement) Constructs a new node representing the occurence of adefault :label inside of aswitchstatement body.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.newDesignationNode(Source source, List<DesignatorNode> designators) Creates a new designation node, which can be used as part of a compound initializer.NodeFactory.newDoLoopNode(Source source, ExpressionNode condition, StatementNode body, SequenceNode<ContractNode> contracts) Constructs a new node representing ado...whileloop.NodeFactory.newDomainTypeNode(Source source) Returns a new instance of domain type node, with no dimension specified; this is the CIVL-C type$domain.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.newEnumerationTypeNode(Source source, IdentifierNode tag, SequenceNode<EnumeratorDeclarationNode> enumerators) Constructs and returns a new enumeration type node.NodeFactory.newEnumeratorDeclarationNode(Source source, IdentifierNode name, ExpressionNode value) Creates new declaration of an enumerator, which is an element inside of a Cenumdefinition.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) Consructs a new field declaration 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.newFieldDesignatorNode(Source source, IdentifierNode name) Constructs a new field designator node.NodeFactory.newFloatingConstantNode(Source source, String representation) Constructs a new floating constant node.NodeFactory.newFloatingConstantNode(Source source, String representation, String wholePart, String fractionPart, String exponent, FloatingValue value) Constructs a new floating constant node.NodeFactory.newFocusAssertNode(Source source, TokenFactory tokenFactory, List<String> focusTags) NodeFactory.newFocusLoopNode(Source source, TokenFactory tokenFactory, String focusTag, SequenceNode<ExpressionNode> tagWindow, SequenceNode<ExpressionNode> memoryList) NodeFactory.newFocusOrderedNode(Source source, TokenFactory tokenFactory, String focusTag, OperatorNode operator, RegularRangeNode range, ExpressionNode expr) NodeFactory.newForLoopInitializerNode(Source source, List<VariableDeclarationNode> declarations) Construcs a new declaration list node, which is comprised of a sequence of variable declarations.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.newFunctionDeclarationNode(Source source, IdentifierNode name, TypeNode type, SequenceNode<ContractNode> contract) Creates a new function declaration with no body (so it is not a function "definition").NodeFactory.newFunctionDefinitionNode(Source source, IdentifierNode name, FunctionTypeNode type, SequenceNode<ContractNode> contract, CompoundStatementNode body) Constructs a new node representing a function definition, i.e., a function declaration with body.NodeFactory.newFunctionTypeNode(Source source, TypeNode returnType, SequenceNode<VariableDeclarationNode> formals, boolean hasIdentifierList) Constructs and returns a new function type 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.newGotoNode(Source source, IdentifierNode label) Constructs a new node representing agotostatement.NodeFactory.newGuardNode(Source source, ExpressionNode expression) Constructs a new node representing a CIVL-C$guardcontract clause.NodeFactory.newHereNode(Source source) Creates a new constant expression node representing$here.NodeFactory.newIdentifierExpressionNode(Source source, IdentifierNode identifier) Constructs a new identifier expression node.NodeFactory.newIdentifierNode(Source source, String name) Constructs and returns a new identifier node with given source object and name.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.newInsertTransformNode(Source source, List<BlockItemNode> nodesToInsert, boolean insertAfter) NodeFactory.newIntConstantNode(Source source, int value) A special case ofNodeFactory.newIntegerConstantNode(Source, String)where the 2nd arg is an integer, and the type of thisIntegerConstantNodeis int.NodeFactory.newIntegerConstantNode(Source source, String representation) Constructs a new integer constant node.NodeFactory.newInvariantNode(Source source, boolean isLoopInvariant, ExpressionNode expression) Creates a newinvariantclause nodeNodeFactory.newLabeledStatementNode(Source source, LabelNode label, StatementNode statement) Constructs new node representing a labeled statement.NodeFactory.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.newLambdaTypeNode(Source source, TypeNode freeVariableType, TypeNode lambdaFunctionType) NodeFactory.newMemoryEventNode(Source source, MemoryEventNode.MemoryEventNodeKind kind, SequenceNode<ExpressionNode> memoryList) creates a new memory event node, which could be either\read,writeorreach.NodeFactory.newMemTypeNode(Source source) Returns a new mem type node ("$mem").NodeFactory.newNoactNode(Source source) Creates a new\noactevent nodeNodeFactory.newNothingNode(Source source) creates a\nothingnode which represents an empty set of memory units.NodeFactory.newNullStatementNode(Source source) Constructs a new node representing a C "null" statement, also known as a "no-op" statement, and written as just a semicolon.NodeFactory.newObjectofNode(Source source, ExpressionNode operand) Creates a new$object_ofnodeNodeFactory.newOmpAtomicNode(Source source, StatementNode statement, OmpAtomicNode.OmpAtomicClause clause, boolean seqConsistent) Creates a new OpenMP atomic node, representing#pragma omp atomic....NodeFactory.newOmpBarrierNode(Source source) Creates a new OpenMP barrier node, representing#pragma omp barrier....NodeFactory.newOmpCriticalNode(Source source, IdentifierNode name, StatementNode statement) Creates a new OpenMP critical node, representing#pragma omp critical....NodeFactory.newOmpFlushNode(Source source) Creates a new OpenMP flush node with no variable listNodeFactory.newOmpFlushNode(Source source, SequenceNode<IdentifierExpressionNode> variables) Creates a new OpenMP flush node, representing#pragma omp flush....NodeFactory.newOmpForNode(Source source, StatementNode statement) Creates a new OpenMP for node, representing#pragma omp for....NodeFactory.newOmpFortranEndNode(Source source, OmpEndNode.OmpEndType endType) FORTRAN ONLY
Creates a new OpenMP END node with its type, which indicates what previous OpenMP executable struct should end.NodeFactory.newOmpFunctionReductionNode(Source source, IdentifierExpressionNode function, SequenceNode<IdentifierExpressionNode> variables) Creates a new OpenMP reduction node with an identifier operator (i.e., function names).NodeFactory.newOmpMasterNode(Source source, StatementNode statement) Creates a new OpenMP master node, representing#pragma omp master....NodeFactory.newOmpOrederedNode(Source source, StatementNode statement) Creates a new OpenMP ordered node, representing#pragma omp ordered....NodeFactory.newOmpParallelNode(Source source, StatementNode statement) Creates a new OpenMP parallel node, representing#pragma omp parallel....NodeFactory.newOmpSectionNode(Source source, StatementNode statement) Creates a new OpenMP section node, representing#pragma omp section....NodeFactory.newOmpSectionsNode(Source source, StatementNode statement) Creates a new OpenMP sections node, representing#pragma omp sections....NodeFactory.newOmpSimdNode(Source source, StatementNode statement) Creates a new OpenMP simd node, representing#pragma omp simd....NodeFactory.newOmpSingleNode(Source source, StatementNode statement) Creates a new OpenMP single node, representing#pragma omp single....NodeFactory.newOmpSymbolReductionNode(Source source, OmpReductionNode.OmpReductionOperator operator, SequenceNode<IdentifierExpressionNode> variables) Creates a new OpenMP reduction node with a standard operator.NodeFactory.newOmpThreadprivateNode(Source source, SequenceNode<IdentifierExpressionNode> variables) Creates a new OpenMP threadprivate node.NodeFactory.newOperatorEventNode(Source source, CompositeEventNode.EventOperator op, DependsEventNode left, DependsEventNode right) creates a new composite event node, which is composed by two events node and an operator.NodeFactory.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.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.newPairNode(Source source, S node1, T node2) Creates a new ordered pair node, i.e., a node with exactly two children belonging to two specific classes.NodeFactory.newPointerTypeNode(Source source, TypeNode referencedType) Constructs and returns a new pointer type node.NodeFactory.newPragmaNode(Source source, IdentifierNode identifier, CivlcTokenSequence producer, CivlcToken newlineToken) Constructs a new pragma node, representing a C#pragmadirective.NodeFactory.newPredicateNode(Source source, IdentifierNode identifier, SequenceNode<VariableDeclarationNode> parameters, ExpressionNode body) Creates a newPredicateNodefor ACSL predicatesNodeFactory.newProcnullNode(Source source) Constructs a new node representing an occurrence of the CIVL-C "null process" constant, written$proc_null.NodeFactory.newProgramNode(Source source, List<BlockItemNode> definitions) Creates a new node representing an entire program.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.newRangeTypeNode(Source source) Returns a new instance of range type node; this is the CIVL-C type$range.NodeFactory.newReadsNode(Source source, SequenceNode<ExpressionNode> expressionList) Constructs a new node representing an ACSLreadscontract clause.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.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.newReturnNode(Source source, ExpressionNode argument) Creates a newreturnstatement node.NodeFactory.newRootNode(Source source) Creates a new constant expression node representing$root.NodeFactory.newRunNode(Source source, StatementNode statement) Create a newRunNodeNodeFactory.newScopeOfNode(Source source, ExpressionNode argument) Creates a new expression node representing$scopeof(expr).NodeFactory.newScopeOfNode(Source source, IdentifierExpressionNode variableExpression) Constructs a new CIVL-C$scopeofexpression node.NodeFactory.newScopeTypeNode(Source source) Returns a new scope type node ("$scope").NodeFactory.newSelfNode(Source source) Constructs a new node representing an occurrence of the CIVL-C "self" process constant, written "$self".<T extends ASTNode>
SequenceNode<T> NodeFactory.newSequenceNode(Source source, String name, List<T> nodes) Creates a new sequence node, i.e., a node which has some finite ordered sequence of children belonging to a particular class.NodeFactory.newSizeofNode(Source source, SizeableNode argument) Constrcts a newsizeofexpression.NodeFactory.newSpawnNode(Source source, FunctionCallNode callNode) Constructs a new CIVL-C spawn expression.NodeFactory.newStandardLabelDeclarationNode(Source source, IdentifierNode name, StatementNode statement) Creates a new node representing a standard C label.NodeFactory.newStatementExpressionNode(Source source, CompoundStatementNode statement) creates a new statement expression node (GNU C extension).NodeFactory.newStaticAssertionNode(Source source, ExpressionNode expression, StringLiteralNode message) Creates a new C11 static assertion node.NodeFactory.newStringLiteralNode(Source source, String representation, StringLiteral literal) Constructs a new string literal node.NodeFactory.newStructOrUnionTypeNode(Source source, boolean isStruct, IdentifierNode tag, SequenceNode<FieldDeclarationNode> structDeclList) Constructs and returns a new structure or union type node.NodeFactory.newSwitchNode(Source source, ExpressionNode condition, StatementNode body) Constructs a new node representing a Cswitchstatement.NodeFactory.newTranslationUnitNode(Source source, List<BlockItemNode> definitions) Creates a new node representing an entire translation unit.NodeFactory.newTypedefDeclarationNode(Source source, IdentifierNode name, TypeNode type) Constructs a newtypedefdeclaration node.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.newVariableDeclarationNode(Source source, IdentifierNode name, TypeNode type) Creates a new declaration of an "object" variable with no initializer.NodeFactory.newVariableDeclarationNode(Source source, IdentifierNode name, TypeNode type, InitializerNode initializer) Creates a new declaration for an "object" variable with an initializer.NodeFactory.newVoidTypeNode(Source source) Returns a new void type node.NodeFactory.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.NodeFactory.newWildcardNode(Source source) creates a new wildcard (...) node.NodeFactory.newWorksharingNode(Source source, OmpWorksharingNode.OmpWorksharingNodeKind kind) Creates a new OpenMP worksharing node with a specific kind. -
Uses of Source in dev.civl.abc.front.IF
Methods in dev.civl.abc.front.IF that return Source -
Uses of Source in dev.civl.abc.token.IF
Methods in dev.civl.abc.token.IF that return SourceModifier and TypeMethodDescriptionSyntaxException.getSource()TokenFactory.join(Source source, CivlcToken token) Computes a minimalSourcecontaining the given source and token.Computes a minimalSourcecontaining the two given sources.TokenFactory.newSource(CivlcToken token) Returns aSourceconsisting of a singleToken.TokenFactory.newSource(CivlcToken first, CivlcToken last) Methods in dev.civl.abc.token.IF with parameters of type SourceModifier and TypeMethodDescriptionTokenFactory.join(Source source, CivlcToken token) Computes a minimalSourcecontaining the given source and token.Computes a minimalSourcecontaining the two given sources.TokenFactory.newSyntaxException(UnsourcedException e, Source source) TokenFactory.newSyntaxException(String message, Source source) Constructors in dev.civl.abc.token.IF with parameters of type SourceModifierConstructorDescriptionSyntaxException(UnsourcedException oldException, Source newSource) SyntaxException(String message, Source source)