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

Class Public::FieldReadNode

A data-flow node that reads the value of a field.

Import path

import semmle.go.dataflow.internal.DataFlowNodes

Direct supertypes

Indirect supertypes

Known direct subtypes

Fields

Predicates

getField

Gets the field this node reads.

getFieldName

Gets the name of the field this node reads.

Inherited predicates

asExpr

Gets the expression corresponding to this node, if any.

from Node
asInstruction

Gets the IR instruction corresponding to this node, if any.

from InstructionNode
asParameter

Gets the parameter corresponding to this node, if any.

from Node
getAPredecessor

Gets a data-flow node from which data may flow to this node in one (intra-procedural) step.

from Node
getASuccessor

Gets a data-flow node to which data may flow from this node in one (intra-procedural) step.

from Node
getBase

Gets the data-flow node representing the base from which the fieldĀ or element is read.

from ComponentReadNode
getBasicBlock

Gets the basic block to which this data-flow node belongs, if any.

from Node
getBoolValue

Gets the Boolean value this data-flow node contains, if any.

from Node
getEnclosingCallable

INTERNAL: Use getRoot() instead.

from Node
getEndColumn

Gets the end column of the location of this node.

from Node
getEndLine

Gets the end line of the location of this node.

from Node
getExactValue

Gets the string representation of the exact value this data-flow node contains, if any.

from Node
getFile

Gets the file in which this node appears.

from Node
getFloatValue

Gets the floating-point value this data-flow node contains, if any.

from Node
getIntValue

Gets the integer value this data-flow node contains, if any.

from Node
getLocation

Gets the location of this node.

from Node
getNodeKind

Gets a textual representation of the kind of this data-flow node.

from InstructionNode
getNumericValue

Gets either getFloatValue or getIntValue.

from Node
getRoot

Gets the function to which this node belongs.

from InstructionNode
getStartColumn

Gets the start column of the location of this node.

from Node
getStartLine

Gets the start line of the location of this node.

from Node
getStringValue

Gets the string value this data-flow node contains, if any.

from Node
getType

Gets the type of this node.

from InstructionNode
getTypeBound

Gets an upper bound on the type of this node.

from Node
hasComplexValue

Holds if the complex value this data-flow node contains has real part real and imaginary part imag.

from Node
hasLocationInfo

Holds if this element is at the specified location. The location spans column startcolumn of line startline to column endcolumn of line endline in file filepath. For more information, see Locations.

from InstructionNode
isConst

Holds if the value of this data-flow node is known at compile time.

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 Node
reads

Holds if this data-flow node evaluates to value of v, which is a value entity, that is, a constant, variable, field, function, or method.

from ReadNode
readsElement

Holds if this data-flow node reads the value of element index on the value of base or its implicit dereference.

from ReadNode
readsField

Holds if this data-flow node reads the value of field f on the value of base or its implicit dereference.

from ReadNode
readsField

Holds if this data-flow node reads the value of field package.type.field on the value of base or its implicit dereference.

from ReadNode
readsMethod

Holds if this data-flow node looks up method m on the value of receiver or its implicit dereference.

from ReadNode
readsMethod

Holds if this data-flow node looks up method package.type.name on the value of receiver or its implicit dereference.

from ReadNode
readsSsaVariable

Holds if this data-flow node reads the value of SSA variable v.

from ReadNode
toString

Gets a textual representation of this element.

from InstructionNode