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

Class StructLit

A struct literal.

Examples:

Point3D{0.5, -0.5, 0.5}
Point3D{y: 1}
Point3D{}

Import path

import semmle.go.Expr

Direct supertypes

Indirect supertypes

Fields

Predicates

getAPrimaryQlClass

Gets the name of a primary CodeQL class to which this node belongs.

getStructType

Gets the struct type underlying this literal.

toString

Gets a textual representation of this element.

Inherited predicates

getAChild

Gets a child node of this node.

from AstNode
getAChildExpr

Gets an expression that is a child node of this node in the AST.

from ExprParent
getAnElement

Gets an element of this composite literal.

from CompositeLit
getBoolValue

Gets the boolean value this expression evalutes to, if any.

from Expr
getChild

Gets the ith child node of this node.

from AstNode
getChildExpr

Gets the ith child expression of this node.

from ExprParent
getElement

Gets the ith element of this composite literal (0-based).

from CompositeLit
getEnclosingFunction

Gets the innermost function definition to which this AST node belongs, if any.

from AstNode
getExactValue

Gets the string representation of the exact value this expression evaluates to, if any.

from Expr
getFile

Gets the file this program element comes from.

from Locatable
getFloatValue

Gets the floating-point value this expression evaluates to, if any.

from Expr
getGlobalValueNumber

Gets the global value number of this expression.

from Expr
getIntValue

Gets the integer value this expression evaluates to, if any.

from Expr
getKey

Gets the ith key expression in this literal.

from CompositeLit
getKind

Gets the kind of this expression, which is an integer value representing the expression’s node type.

from Expr
getLocation

Gets this element’s location.

from Locatable
getNumChild

Gets the number of child nodes of this node.

from AstNode
getNumChildExpr

Gets the number of child expressions of this node.

from ExprParent
getNumElement

Gets the number of elements in this composite literal.

from CompositeLit
getNumLines

Gets the number of lines covered by this element.

from Locatable
getNumericValue

Gets either getFloatValue or getIntValue.

from Expr
getParent

Gets the parent node of this AST node, if any.

from AstNode
getPrimaryQlClasses

Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs.

from AstNode
getStringValue

Gets the string value this expression evaluates to, if any.

from Expr
getType

Gets the type of this expression.

from Expr
getTypeExpr

Gets the expression representing the type of this composite literal.

from CompositeLit
getUniquelyNumberedChild

Get an AstNode child, ordered by child kind and then by index.

from AstNode
getValue

Gets the ith value expression in this literal.

from CompositeLit
hasComplexValue

Holds if the complex value this expression evaluates to has real part real and imaginary part imag.

from Expr
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 Locatable
isConst

Holds if this expression is constant, that is, if its value is determined at compile-time.

from Expr
isPlatformIndependentConstant

Holds if this expression has a constant value which is guaranteed not to depend on the platform where it is evaluated.

from Expr
mayHaveOwnSideEffects

Holds if this expression may have observable side effects of its own (that is, independent of whether its sub-expressions may have side effects).

from Expr
mayHaveSideEffects

Holds if the evaluation of this expression may produce observable side effects.

from Expr
stripParens

Gets this expression, with any surrounding parentheses removed.

from Expr

Charpred