Uses of Interface
dev.civl.abc.ast.value.IF.Value
Packages that use Value
Package
Description
Submodule ast.entity defines entities
(objects of type
Entity),
the abstract things such as types, structures, unions, enumerations,
objects (variables), functions, and so on,
which can be named by identifiers in a program.Submodule ast.node defines every kind of
node in an AST.
The ast.node.expression submodule defines AST nodes
for representing expressions 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 Value in dev.civl.abc.ast.entity.IF
Methods in dev.civl.abc.ast.entity.IF that return types with arguments of type ValueModifier and TypeMethodDescriptionVariable.getConstantAlignments()An object declaration may contain any number of alignment specifiers.Methods in dev.civl.abc.ast.entity.IF with parameters of type ValueModifier and TypeMethodDescriptionvoidVariable.addConstantAlignment(Value constant) Adds a constant to the list of alignment constants assocaited to this variable. -
Uses of Value in dev.civl.abc.ast.node.IF
Methods in dev.civl.abc.ast.node.IF that return ValueModifier 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.Methods in dev.civl.abc.ast.node.IF with parameters of type ValueModifier and TypeMethodDescriptionvoidNodeFactory.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. -
Uses of Value in dev.civl.abc.ast.node.IF.expression
Methods in dev.civl.abc.ast.node.IF.expression that return ValueModifier and TypeMethodDescriptionConstantNode.getConstantValue()Returns the actual constant value, obtained by evaluating this constant expression. -
Uses of Value in dev.civl.abc.ast.type.IF
Methods in dev.civl.abc.ast.type.IF that return ValueModifier and TypeMethodDescriptionField.getBitWidth()Returns the integer bit width constant value, ornullif a bit width is not specified.Enumerator.getValue()Returns the optional constant integer value assigned to this enumerator, ornullif this is missing.Methods in dev.civl.abc.ast.type.IF with parameters of type ValueModifier and TypeMethodDescriptionTypeFactory.newEnumerator(EnumeratorDeclarationNode declaration, EnumerationType enumeration, Value value) Creates a new enumerator entity.TypeFactory.newField(FieldDeclarationNode declaration, ObjectType type, Value bitWidth) Creates a new field entity. -
Uses of Value in dev.civl.abc.ast.value.IF
Subinterfaces of Value in dev.civl.abc.ast.value.IFModifier and TypeInterfaceDescriptioninterfaceA value of the form "invalid input: '&'(lhs)", where lhs is a left hand side expression.interfaceinterfaceinterfaceA value obtained by casting a value to a new type.interfaceinterfaceinterfaceinterfaceinterfaceinterfaceinterfaceinterfaceinterfaceinterfaceinterfaceinterfaceA value which is a function of a type, such as "sizeof(type)" or "_Alignof(type)".interfaceinterfaceMethods in dev.civl.abc.ast.value.IF that return ValueModifier and TypeMethodDescriptionValueFactory.evaluate(ExpressionNode constantExpression) Evaluates a constant expression.CastValue.getArgument()OperatorValue.getArgument(int index) Returns the index-th argument, indexed from 0.ArrayValue.getElement(int index) ArrayElementReference.getIndex()StructureValue.getMember(int fieldIndex) UnionValue.getMemberValue()ValueFactory.sizeofValue(Type type) Methods in dev.civl.abc.ast.value.IF with parameters of type ValueModifier and TypeMethodDescriptionIs the value a zero value? Maybe, maybe not: how to deal? Thm prover time.ValueFactory.newUnionValue(StructureOrUnionType unionType, Field field, Value memberValue) ValueFactory.operatorValue(Type type, OperatorNode.Operator operator, Value[] arguments) The legal operators are: ADDRESSOF: invalid input: '&' pointer to object BITAND: invalid input: '&' bit-wise and BITCOMPLEMENT: ~ bit-wise complement BITOR: | bit-wise inclusive or BITXOR: ^ bit-wise exclusive or CONDITIONAL: ?: the conditional operator DEREFERENCE: * pointer dereference DIV: / numerical division EQUALS: == equality GT: > greater than GTE: >= greater than or equals LAND: invalid input: '&'invalid input: '&' logical and LOR: || logical or LT: invalid input: '<' less than LTE: invalid input: '<'= less than or equals MINUS: - binary subtraction (numbers and pointers) MOD: % integer modulus NEQ: != not equals NOT: ! logical not PLUS: + binary addition, numeric or pointer SHIFTLEFT: invalid input: '<'invalid input: '<' shift left SHIFTRIGHT: >> shift right SUBSCRIPT: [] array subscript TIMES: * numeric multiplication UNARYMINUS: - numeric negative UNARYPLUS // + numeric no-opvoidArrayValue.setElement(int index, Value elementValue) voidvoid