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

Class RestTypeExpr

A rest element in a tuple type, such as ...string[] in [number, ...string[]].

Import path

import javascript

Direct supertypes

Indirect supertypes

Predicates

getAPrimaryQlClass

Gets the primary QL class for the Locatable.

getArrayType

Gets the type T[] in ...T[], such as string[] in [number, ...string[]].

getElementType

Gets the type T in ...T[], such as string in [number, ...string[]].

Inherited predicates

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
getAToken

Gets a token belonging to this element.

from AstNode
getAnUnderlyingType

Repeatedly unfolds unions, intersections, parentheses, and nullability/readonly modifiers and gets any of the underlying types, or this type itself if it cannot be unfolded.

from TypeAnnotation
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
getClass

Gets the class referenced by this type annotation, if any.

from TypeExpr
getContainer

Gets the function or toplevel to which this node belongs.

from NodeInStmtContainer
getDocumentation

Gets the JSDoc comment associated with this expression or type or its parent statement, if any.

from ExprOrType
getEnclosingFunctionfrom TypeExpr
getEnclosingStmtfrom TypeExpr
getEndLine

Gets the line on which this element ends.

from Locatable
getFile

Gets the file this program element comes from.

from AstNode
getFirstControlFlowNode

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

from AstNode
getFirstToken

Gets the first token belonging to this element.

from AstNode
getLastToken

Gets the last token belonging to this element.

from AstNode
getLocation

Gets this element’s location.

from AstNode
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
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
getTopLevelfrom TypeExpr
getType

Gets the static type expressed by this type annotation.

from TypeExpr
getUnderlyingReference

Gets the innermost reference that this expression evaluates to, if any.

from ExprOrType
getUnderlyingValue

Gets the innermost expression that this expression evaluates to.

from ExprOrType
hasQualifiedName

Holds if this is a reference to the type with qualified name globalName relative to the global scope.

from TypeAnnotation
hasQualifiedName

Holds if this is a reference to the type exported from moduleName under the name exportedName.

from TypeAnnotation
inExternsFile

Holds if this syntactic entity belongs to an externs file.

from AstNode
isAmbient

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

from AstNode
isAny

Holds if this is the any type.

from TypeAnnotation
isBigInt

Holds if this is the bigint type.

from TypeAnnotation
isBoolean

Holds if this is the boolean type. Does not hold for the (rarely used) Boolean type.

from TypeAnnotation
isBooleany

Holds if this is the boolean or Boolean type.

from TypeAnnotation
isConstKeyword

Holds if this is the const keyword, occurring in a type assertion such as x as const.

from TypeAnnotation
isNever

Holds if this is the never type, or an equivalent type representing the empty set of values.

from TypeAnnotation
isNull

Holds if this is the null type.

from TypeAnnotation
isNumber

Holds if this is the number type. Does not hold for the (rarely used) Number type.

from TypeAnnotation
isNumbery

Holds if this is the number or Numbers type.

from TypeAnnotation
isObjectKeyword

Holds if this is the object type.

from TypeAnnotation
isRawFunction

Holds if this is the Function type.

from TypeAnnotation
isString

Holds if this is the string type. Does not hold for the (rarely used) String type.

from TypeAnnotation
isStringy

Holds if this is the string or String type.

from TypeAnnotation
isSymbol

Holds if this is the symbol type.

from TypeAnnotation
isThis

Holds if this is the this type.

from TypeAnnotation
isUndefined

Holds if this is the undefined type.

from TypeAnnotation
isUniqueSymbol

Holds if this is the unique symbol type.

from TypeAnnotation
isUnknownKeyword

Holds if this is the unknown type.

from TypeAnnotation
isVoid

Holds if this is the void type.

from TypeAnnotation
stripParens

Gets this expression or type, with any surrounding parentheses removed.

from ExprOrType
toString

Gets a textual representation of this element.

from TypeExpr