CodeQL library for JavaScript/TypeScript
codeql/javascript-all 2.0.2-dev (changelog, source)
Search

Class EnumDeclaration

A TypeScript enum declaration, such as the following declaration:

enum Color { red = 1, green, blue }

Import path

import javascript

Direct supertypes

Indirect supertypes

Predicates

getADecorator

Gets a decorator applied to this enum declaration.

getAMember

Gets any of the enum members.

getAPrimaryQlClass

Gets the primary QL class for the Locatable.

getDecorator

Gets the nth decorator applied to this enum declaration.

getFirstControlFlowNode

Gets the first control flow node belonging to this syntactic entity.

getIdentifier

Gets the name of this enum, such as E in enum E { A, B }.

getLocalNamespaceName

Gets the local namespace name introduced by the enumeration, for use in types that reference the enum members directly.

getLocalTypeName

Gets the local type name introduced by the enumeration.

getMember

Gets the nth enum member, starting at 0, such as A or B in enum E { A, B }.

getMemberByName

Gets the enum member with the given name, if any.

getName

Gets the name of this enum as a string.

getNumDecorator

Gets the number of decorators applied to this enum declaration.

getNumMember

Gets the number of enum members.

getTypeName

Gets the canonical name of the type being defined.

getVariable

Gets the variable holding the enumeration object.

isConst

Holds if this enumeration is declared with the const keyword.

Inherited predicates

analyze

Gets type inference results for this element.

from ValueNode
describeControlFlowNode

For internal use.

from ControlFlowNode
flow

Gets the data flow node associated with this program element.

from ValueNode
getAChild

Gets a child node of this node.

from AstNode
getAChildExpr

Gets a child expression of this node.

from AstNode
getAChildStmt

Gets a child statement of this node.

from AstNode
getAPredecessor

Gets a node preceding this node in the CFG.

from ControlFlowNode
getASuccessor

Gets a node succeeding this node in the CFG.

from ControlFlowNode
getAToken

Gets a token belonging to this element.

from AstNode
getBasicBlock

Gets the basic block this node belongs to.

from ControlFlowNode
getChild

Gets the ith child node of this node.

from AstNode
getChildExpr

Gets the ith child expression of this node.

from AstNode
getChildStmt

Gets the ith child statement of this node.

from AstNode
getChildTypeExpr

Gets the ith child type expression of this node.

from AstNode
getContainer

Gets the function or toplevel to which this node belongs.

from NodeInStmtContainer
getDocumentation

Gets the JSDoc comment for this element, if any.

from Documentable
getEnclosingTryCatchStmt

Gets the try statement with a catch block containing this statement without crossing function boundaries or other try statements with catch blocks.

from Stmt
getEndLine

Gets the line on which this element ends.

from Locatable
getFile

Gets the file this program element comes from.

from AstNode
getFirstToken

Gets the first token belonging to this element.

from AstNode
getKind

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

from Stmt
getLastToken

Gets the last token belonging to this element.

from AstNode
getLocation

Gets this element’s location.

from Locatable
getNamespace

Gets the canonical name of the namespace being defined.

from NamespaceDefinition
getNumChild

Gets the number of child nodes of this node.

from AstNode
getNumChildExpr

Gets the number of child expressions of this node.

from AstNode
getNumChildStmt

Gets the number of child statements of this node.

from AstNode
getNumLines

Gets the number of lines covered by this element.

from Locatable
getParent

Gets the parent node of this node, if any.

from AstNode
getParentStmt

Gets the statement that is the parent of this statement in the AST, if any.

from Stmt
getPrimaryQlClasses

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

from Locatable
getStartLine

Gets the line on which this element starts.

from Locatable
getTopLevel

Gets the toplevel syntactic unit to which this element belongs.

from AstNode
hasSemicolonInserted

Holds if this statement has an implicitly inserted semicolon.

from Stmt
inExternsFile

Holds if this syntactic entity belongs to an externs file.

from AstNode
isAFinalNode

Holds if this is a final node, that is, a CFG node where execution of a toplevel or function terminates.

from ControlFlowNode
isAFinalNodeOfContainer

Holds if this is a final node of container, that is, a CFG node where execution of that toplevel or function terminates.

from ControlFlowNode
isAmbient

Holds if this is part of an ambient declaration or type annotation in a TypeScript file.

from AstNode
isBranch

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

from ControlFlowNode
isJoin

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

from ControlFlowNode
isStart

Holds if this is a start node, that is, the CFG node where execution of a toplevel or function begins.

from ControlFlowNode
isSubjectToSemicolonInsertion

Holds if automatic semicolon insertion applies to this statement.

from Stmt
isUnreachable

Holds if this node is unreachable, that is, it has no predecessors in the CFG. Entry nodes are always considered reachable.

from ControlFlowNode
nestedIn

Holds if this statement is lexically nested inside statement outer.

from Stmt
toString

Gets a textual representation of this element.

from Stmt