CodeQL library for Go
codeql/go-all 8.0.0 (changelog, source)
Search

Class IR::InitLiteralMapElementInstruction

An IR instruction that initializes an element of a map literal.

Import path

import semmle.go.controlflow.IR

Direct supertypes

Indirect supertypes

Fields

Inherited fields

Inherited predicates

asExpr

Gets the expression this control flow node uniquely represents, if any.

from NodeImpl
asStmt

Gets the statement this control flow node uniquely represents, if any.

from NodeImpl
dominates

Holds if this node dominates that node.

from ControlFlowNode
dominatesNode

Holds if this node dominates dominee in the control-flow graph.

from Node
getANormalSuccessor

Gets a normal successor of this node, if any. This includes direct successors and conditional successors.

from ControlFlowNode
getAPredecessor

Gets an immediate predecessor of this node, if this is not an EntryNode.

from ControlFlowNode
getASuccessor

Gets an immediate successor of this node, if this is not an ExitNode.

from ControlFlowNode
getASuccessor

Gets an immediate successor of a given type, if any.

from ControlFlowNode
getAnExceptionSuccessor

Gets an exception successor of this node, if any.

from ControlFlowNode
getAstNode

Gets the AST node with which this control flow node is associated. Note that several control flow nodes are usually associated with the same AST node, but each control flow node is associated with a unique AST node.

from NodeImpl
getBase

Gets the instruction allocating the composite literal.

from InitLiteralComponentInstruction
getBasicBlock

Gets the basic block containing this control flow node.

from ControlFlowNode
getBoolValue

Gets the Boolean value of the result of this instruction, if it can be determined.

from Instruction
getEnclosingCallable

Gets the enclosing callable of this control flow node.

from NodeImpl
getExactValue

Gets the string representation of the exact value of the result of this instruction, if any.

from Instruction
getFile

Gets the file to which this node belongs.

from Node
getFloatValue

Gets the float value of the result of this instruction, if it can be determined.

from Instruction
getIdTag

INTERNAL: Do not use.

from NodeImpl
getIndex

Gets the instruction computing the index of the initialized element.

from InitLiteralElementInstruction
getInsnKind

Gets a textual representation of the kind of this instruction.

from Instruction
getIntValue

Gets the int value of the result of this instruction, if it can be determined.

from Instruction
getLhs

Gets the target to which this instruction writes.

from WriteInstruction
getLocation

Gets the source location for this node.

from NodeImpl
getNumericValue

Gets either getFloatValue or getIntValue

from Instruction
getResultType

Gets the type of the result of this instruction, if any.

from Instruction
getRhs

Gets the instruction computing the value this instruction writes.

from InitLiteralComponentInstruction
getRoot

Gets the innermost function to which this node belongs, or the file if it is not inside a function.

from Node
getStringValue

Gets the string value of the result of this instruction, if it can be determined.

from Instruction
hasComplexValue

Holds if the complex value of the result of this instruction has real part real and imaginary part imag.

from Instruction
hasLocationInfo

DEPRECATED: Use getLocation() instead.

from Node
injects

Holds if this is the unique control flow node that represents the given AST node.

from NodeImpl
isAdditional

Holds if this is an additional control flow node with the given tag for the given AST node.

from NodeImpl
isAfter

Holds if this is a node representing the point in the control flow after the normal termination of n. For simple leaf nodes, this is merged with the “before” node and is hence equal to it. For nodes in conditional contexts, this may be one of two possible “after” nodes representing the different possible values of n.

from NodeImpl
isAfterFalse

Holds if this node indicates that n evaluates to the value false.

from ControlFlowNode
isAfterTrue

Holds if this node indicates that n evaluates to the value true.

from ControlFlowNode
isAfterValue

Holds if this node indicates that n evaluates to the value t.

from ControlFlowNode
isBefore

Holds if this is the node representing the point in the control flow before the execution of n.

from NodeImpl
isBranch

Holds if this is a node with more than one successor.

from Node
isConst

Holds if the result of this instruction is known at compile time.

from Instruction
isEntryNode

Holds if this node is the unique entry node of a file or function.

from Node
isExitNode

Holds if this node is the unique exit node of a file or function.

from Node
isFirstNodeOf

Holds if this is the first control-flow node in subtree.

from Node
isIn

Holds if this is the node representing the given AST node when n has an in-order or post-order execution.

from NodeImpl
isInitialization

Holds if this instruction initializes a literal.

from WriteInstruction
isJoin

Holds if this is a node with more than one predecessor.

from Node
isPlatformIndependentConstant

Holds if the result of this instruction is known at compile time, and is guaranteed not to depend on the platform where it is evaluated.

from Instruction
postDominates

Holds if this node post-dominates that node.

from ControlFlowNode
reads

Holds if this instruction reads the value of variable or constant v.

from Instruction
readsElement

Holds if this instruction reads the value of element index on the value of base.

from Instruction
readsField

Holds if this instruction reads the value of field f on the value of base.

from Instruction
readsMethod

Holds if this instruction looks up method m on the value of receiver.

from Instruction
strictlyDominates

Holds if this node strictly dominates that node.

from ControlFlowNode
strictlyPostDominates

Holds if this node strictly post-dominates that node.

from ControlFlowNode
toString

Gets a textual representation of this node.

from NodeImpl
writes

Holds if this instruction updates variable or constant v to the value of rhs.

from WriteInstruction
writesElement

Holds if this instruction updates the value of element index on the value of base.

from Instruction
writesField

Holds if this instruction updates the value of field f on the value of base.

from Instruction