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

Class FuncDecl

A function declaration.

Import path

import semmle.go.Decls

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getAPrimaryQlClass

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

getBody

Gets the body of this function, if any.

getFunction

Gets the function declared by this function declaration.

getName

Gets the name of the defined function, if any.

getNameExpr

Gets the identifier denoting the name of this function.

getType

Gets the type of this function.

getTypeExpr

Gets the expression denoting the type of this function.

toString

Gets a textual representation of this element.

Inherited predicates

getACall

Gets a call to this function.

from FuncDef
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
getAChildStmt

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

from StmtParent
getADeferStmt

Gets a defer statement in this function.

from FuncDef
getAField

Gets a child field declaration of this node in the AST.

from FieldParent
getAParameter

Gets a parameter of this function.

from FuncDef
getAResultVar

Gets a result variable of this function.

from FuncDef
getATypeParameterDecl

Gets a child field of this node in the AST.

from TypeParamDeclParent
getChild

Gets the ith child node of this node.

from AstNode
getChildExpr

Gets the ith child expression of this node.

from ExprParent
getChildStmt

Gets the ith child statement of this node.

from StmtParent
getDocumentation

Gets the documentation comment group attached to this element, if any.

from Documentable
getEnclosingFunction

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

from AstNode
getField

Gets the ith field declaration of this node.

from FieldParent
getFile

Gets the file this program element comes from.

from Locatable
getKind

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

from Decl
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
getNumChildStmt

Gets the number of child statements of this node.

from StmtParent
getNumFields

Gets the number of child field declarations of this node.

from FieldParent
getNumLines

Gets the number of lines covered by this element.

from Locatable
getNumParameter

Gets the number of parameters of this function.

from FuncDef
getParameter

Gets the ith parameter of this function.

from FuncDef
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
getResultVar

Gets the ith result variable of this function.

from FuncDef
getScope

Gets the scope induced by this function.

from FuncDef
getTypeParameterDecl

Gets the ith type parameter declaration of this node.

from TypeParamDeclParent
getUniquelyNumberedChild

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

from AstNode
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
isVariadic

Holds if this function is variadic.

from FuncDef
mayHaveSideEffects

Holds if the execution of this statement may produce observable side effects.

from Decl