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

Class Make::PolynomialBackTrackingTerm

A term that may cause a regular expression engine to perform a polynomial number of match attempts, relative to the input length.

Import path

import codeql.regex.nfa.SuperlinearBackTracking

Direct supertypes

Indirect supertypes

Fields

Predicates

getPrefixMessage

Gets a message for which prefix a matching string must start with for this term to cause polynomial backtracking.

getPreviousLoop

Gets a predecessor to this, which also loops on the pump string, and thereby causes polynomial backtracking.

getPumpString

Gets the string that should be repeated to cause this regular expression to perform polynomially.

getReason

Gets the reason for the number of match attempts.

isAtEndLine

Holds if all non-empty successors to the polynomial backtracking term matches the end of the line.

Inherited predicates

getAChild

Gets a child term of this term.

from RegExpTerm
getChild

Gets the ith child term of this term.

from RegExpTerm
getLastChild

Gets the last child term of this element.

from RegExpTerm
getNumChild

Gets the number of child terms of this term.

from RegExpTerm
getParent

Gets the parent term of this regular expression term, or the regular expression literal if this is the root term.

from RegExpTerm
getRawValue

Gets the raw source text of this term.

from RegExpTerm
getRootTerm

Gets the outermost term of this regular expression.

from RegExpTerm
getSuccessor

Gets the regular expression term that is matched (textually) after this one, if any.

from RegExpTerm
hasLocationInfofrom RegExpTerm
isRootTerm

Holds if this is the root term of a regular expression.

from RegExpTerm
isUsedAsRegExp

Holds if this term is part of a regular expression literal, or a string literal that is interpreted as a regular expression.

from RegExpTerm
toStringfrom RegExpTerm

Charpred