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

Class JSDocUnionTypeExpr

A union type expression.

Example:

number|string

Import path

import javascript

Direct supertypes

Indirect supertypes

Predicates

getAnAlternative

Gets one of the type alternatives of this union type.

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.

Inherited predicates

getAPrimaryQlClass

Gets the primary QL class for the Locatable.

from Locatable
getChild

Gets the ith child type expression of this type expression.

from JSDocTypeExpr
getClass

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

from TypeAnnotation
getContainer

Gets the function or toplevel to which this node belongs.

from NodeInStmtContainer
getEnclosingFunction

Gets the function in which this type appears, if any.

from JSDocTypeExpr
getEnclosingStmt

Gets the statement in which this type appears.

from JSDocTypeExpr
getEndLine

Gets the line on which this element ends.

from Locatable
getFile

Gets the file this program element comes from.

from Locatable
getIndex

Gets the index of this type expression within its parent.

from JSDocTypeExpr
getJSDocComment

Gets the JSDoc comment to which this element belongs.

from JSDocTypeExpr
getLocation

Gets this element’s location.

from Locatable
getNumLines

Gets the number of lines covered by this element.

from Locatable
getParent

Gets the syntactic element in which this type expression is nested, which may either be another type expression or a JSDoc tag.

from JSDocTypeExpr
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 top-level containing this type annotation.

from JSDocTypeExpr
getType

Gets the static type denoted by this type annotation, if one is provided by the extractor.

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

Gets a textual representation of this element.

from JSDocTypeExpr