Поделиться через


CommonRegexParser class

Extends

Parser

Конструкторы

CommonRegexParser(TokenStream)

Свойства

ALC
Ampersand
AUC
Backslash
BellChar
BLC
BlockQuoted
BUC
Caret
CarriageReturn
CharacterClassEnd
CharacterClassStart
CharWithoutProperty
CharWithProperty
CLC
CloseBrace
CloseParen
Colon
Comma
ControlChar
CUC
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
DecimalDigit
DLC
Dot
DUC
ELC
EndOfSubject
Equals
EscapeChar
EUC
Exclamation
FLC
FormFeed
FUC
GLC
grammarFileName
GreaterThan
GUC
Hash
HexChar
HLC
HUC
Hyphen
ILC
IUC
JLC
JUC
KLC
KUC
LessThan
LLC
LUC
MLC
MUC
NewLine
NLC
NotDecimalDigit
NotWhiteSpace
NotWordChar
NUC
OLC
OpenBrace
OpenParen
OtherChar
OUC
Pipe
PLC
Plus
PUC
QLC
QUC
QuestionMark
Quoted
RLC
RUC
ruleNames
ruleNames
RULE_alpha_nums
RULE_alternation
RULE_atom
RULE_capture
RULE_cc_atom
RULE_cc_literal
RULE_character_class
RULE_digit
RULE_digits
RULE_element
RULE_expr
RULE_letter
RULE_literal
RULE_name
RULE_non_capture
RULE_non_close_paren
RULE_non_close_parens
RULE_number
RULE_octal_char
RULE_octal_digit
RULE_option
RULE_option_flag
RULE_parse
RULE_quantifier
RULE_quantifier_type
RULE_shared_atom
RULE_shared_literal
serializedATN
SingleQuote
SLC
Star
SUC
Tab
TLC
TUC
ULC
Underscore
UUC
VLC
VOCABULARY
vocabulary
VUC
WhiteSpace
WLC
WordChar
WUC
XLC
XUC
YLC
YUC
ZLC
ZUC

Унаследованные свойства

atn

Получение serializedATN, используемой распознавательом для прогнозирования.

buildParseTree

Отслеживайте объекты <xref:ParserRuleContext> во время синтаксического анализа и подключите их с помощью списка <xref:ParserRuleContext%23children>, чтобы он формирует дерево синтаксического анализа. <xref:ParserRuleContext>, возвращенный из правила запуска, представляет корень дерева синтаксического анализа. Обратите внимание, что если мы не создадим деревья синтаксического анализа, контексты правил только указывают вверх. Когда правило завершает работу, он возвращает контекст, но получает мусор, собранный, если никто не содержит ссылку. Он указывает вверх, но никто не указывает на него.

При сборке деревьев синтаксического анализа мы добавляем все эти контексты в список <xref:ParserRuleContext%23children>. Контексты затем не являются кандидатами для сборки мусора.

context
currentToken

Совпадение должно возвращать текущий входной символ, который помещается в метку для связанного маркера ref; Например, x=ID.

EOF
errorHandler
inputStream

Задайте поток маркера и сбросьте средство синтаксического анализа.

interpreter

Задайте интерпретатор ATN, используемый распознавательом для прогнозирования.

isMatchedEOF
isTrace

Во время синтаксического анализа иногда полезно прослушивать события входа и выхода правила, а также совпадения маркеров. Это для быстрой и грязной отладки.

numberOfSyntaxErrors

Возвращает количество ошибок синтаксиса, сообщаемых во время синтаксического анализа. Это значение увеличивается при каждом вызове <xref:%23notifyErrorListeners>.

См. #notifyErrorListeners

parseInfo
precedence

Получите уровень приоритета для правила приоритета верхнего уровня.

ruleContext
sourceName
state

Укажите, что распознаватель изменил внутреннее состояние, которое соответствует состоянию ATN, переданном в. Таким образом, мы всегда знаем, где мы в ATN, как синтаксический анализатор идет вместе. Объекты контекста правила образуют стек, который позволяет увидеть стек вызовов правил. Объедините это, и у нас есть полные сведения о конфигурации ATN.

tokenFactory

Методы

alpha_nums()
alternation()
atom()
capture()
cc_atom()
cc_literal()
character_class()
digit()
digits()
element()
expr()
letter()
literal()
name()
non_capture()
non_close_paren()
non_close_parens()
number()
octal_char()
octal_digit()
option()
option_flag()
parse()
quantifier()
quantifier_type()
shared_atom()
shared_literal()

Наследуемые методы

action(RuleContext | undefined, number, number)
addErrorListener(ANTLRErrorListener<Token>)
addParseListener(ParseTreeListener)

Регистрирует listener для получения событий во время процесса синтаксического анализа. Чтобы поддерживать преобразования грамматики с сохранением выходных данных (включая, но не ограничивается удалением левого рекурсии, автоматическое создание левого фактора и оптимизированное создание кода), вызовы методов прослушивателя во время синтаксического анализа могут существенно отличаться от вызовов, выполненных <xref:ParseTreeWalker%23DEFAULT>, используемых после завершения синтаксического анализа. В частности, события входа и выхода правил могут возникать в другом порядке во время синтаксического анализа, чем после синтаксического анализа. Кроме того, могут быть опущены вызовы определенных методов входа правила.

При следующих конкретных исключениях вызовы событий прослушивателя детерминированными, т. е. для идентичных входных данных вызовы методов прослушивателя будут одинаковыми.

  • Изменения грамматики, используемой для создания кода, могут изменить поведение вызовов прослушивателя.
  • Изменения параметров командной строки, передаваемых в ANTLR 4 при создании средства синтаксического анализа, могут изменить поведение вызовов прослушивателя.
  • Изменение версии средства ANTLR, используемого для создания средства синтаксического анализа, может изменить поведение вызовов прослушивателя.
compileParseTreePattern(string, number)

Предпочтительный метод получения шаблона дерева. Например, вот пример использования:

let t: ParseTree = parser.expr();
let p: ParseTreePattern = await parser.compileParseTreePattern("<ID>+0", MyParser.RULE_expr);
let m: ParseTreeMatch = p.match(t);
let id: string = m.get("ID");
compileParseTreePattern(string, number, Lexer)

То же, что и [int)](xref:%23compileParseTreePattern(строка%2C) но укажите CommonRegexLexer вместо попытки вывести его из этого средства синтаксического анализа.

consume()

Потреблять и возвращать текущий символ. Например, учитывая следующие входные данные с A быть текущим символом lookahead, эта функция перемещает курсор в B и возвращает A.

A B
^

Если средство синтаксического анализа не находится в режиме восстановления ошибок, используемый символ добавляется в дерево синтаксического анализа с помощью <xref:ParserRuleContext%23addChild(TerminalNode)>, а <xref:ParseTreeListener%23visitTerminal> вызывается для всех прослушивателей синтаксического анализа. Если средство синтаксического анализа в режиме восстановления ошибок, используемый символ добавляется в дерево синтаксического анализа с помощью [Token)](xref:%23createErrorNode(ParserRuleContext%2C), то <xref:ParserRuleContext%23addErrorNode(ErrorNode)> и <xref:ParseTreeListener%23visitErrorNode> вызывается для любого прослушивателя синтаксического анализа.

createErrorNode(ParserRuleContext, Token)

Создание узла ошибки, заданного маркером, связанного с родительским элементом. Как правило, создаваемый узел ошибки не является функцией родительского элемента.

createTerminalNode(ParserRuleContext, Token)

Создание конечного узла маркера, связанного с родительским элементом. Как правило, создаваемый узел терминала не является функцией родительского элемента.

dumpDFA()

Для отладки и других целей.

enterLeftFactoredRule(ParserRuleContext, number, number)
enterOuterAlt(ParserRuleContext, number)
enterRecursionRule(ParserRuleContext, number, number, number)
enterRule(ParserRuleContext, number, number)

Всегда вызывается созданными средствами синтаксического анализа при входе в правило. Поле доступа <xref:%23_ctx> получить текущий контекст.

exitRule()
getATNWithBypassAlts()

ATN с альтернативами обхода является дорогостоящим для создания, поэтому мы создадим его лениво. @ , если текущий синтаксический анализ не реализует свойство serializedATN.

getDFAStrings()

Для отладки и других целей.

getErrorHeader(RecognitionException)

Что такое заголовок ошибки, как правило, сведения о позиции строки или символа?

getErrorListenerDispatch()
getErrorListeners()
getExpectedTokens()

Вычисляет набор входных символов, которые могут следовать текущему состоянию и контексту синтаксического анализа, как указано в <xref:%23getState> и <xref:%23getContext>соответственно.

См. atN#getExpectedTokens(int, RuleContext)

getExpectedTokensWithinCurrentRule()
getInvokingContext(number)
getParseListeners()
getRuleIndex(string)

Получите индекс правила (например, поле RULE_ruleName) или -1, если он не найден.

getRuleIndexMap()

Получение карты из имен правил в индексы правил. Используется для компиляции шаблонов XPath и дерева.

getRuleInvocationStack(RuleContext)

Возвращаемый список<строка> имен правил в экземпляре синтаксического анализа, что приводит к вызову текущего правила. Вы можете переопределить, если требуется дополнительные сведения, например сведения о файле или строке, где вызывается правило ATN. Это очень полезно для сообщений об ошибках.

getTokenType(string)
getTokenTypeMap()

Получение карты от имен маркеров к типам маркеров. Используется для компиляции шаблонов XPath и дерева.

inContext(string)
isExpectedToken(number)

Проверяет, может ли symbol следовать текущему состоянию в ATN. Поведение этого метода эквивалентно следующему, но реализуется таким образом, чтобы полный контекстно-чувствительный набор не должен быть создан явным образом.

return getExpectedTokens().contains(symbol);
match(number)

Сопоставление текущего входного символа с ttype. Если тип символа совпадает, вызов <xref:ANTLRErrorStrategy%23reportMatch> и <xref:%23consume> для завершения процесса сопоставления. Если тип символа не соответствует, <xref:ANTLRErrorStrategy%23recoverInline> вызывается в текущей стратегии ошибок для попытки восстановления. Если <xref:%23getBuildParseTree>true и индекс маркера символа, возвращаемого <xref:ANTLRErrorStrategy%23recoverInline> равно -1, символ добавляется в дерево синтаксического анализа путем вызова [token)](xref:%23createErrorNode(ParserRuleContext%2C), а затем <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

matchWildcard()

Сопоставлять текущий входной символ как подстановочный знак. Если тип символа совпадает (т. е. имеет значение больше 0), <xref:ANTLRErrorStrategy%23reportMatch> и <xref:%23consume> вызываются для завершения процесса сопоставления. Если тип символа не соответствует, <xref:ANTLRErrorStrategy%23recoverInline> вызывается в текущей стратегии ошибок для попытки восстановления. Если <xref:%23getBuildParseTree>true и индекс маркера символа, возвращаемого <xref:ANTLRErrorStrategy%23recoverInline> равно -1, символ добавляется в дерево синтаксического анализа путем вызова [token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) и <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

notifyErrorListeners(string)
notifyErrorListeners(string, Token | null, RecognitionException | undefined)
precpred(RuleContext, number)
pushNewRecursionContext(ParserRuleContext, number, number)

Как и <xref:%23enterRule>, но для рекурсивных правил. Сделайте текущий контекст дочерним элементом входящего localctx.

removeErrorListener(ANTLRErrorListener<Token>)
removeErrorListeners()
removeParseListener(ParseTreeListener)

Удалите listener из списка прослушивателей синтаксического анализа. Если listenerundefined или не добавлен в качестве прослушивателя синтаксического анализа, этот метод ничего не делает.

См. #addParseListener

removeParseListeners()

Удалите все прослушиватели синтаксического анализа.

См. #addParseListener

reset()

сброс состояния синтаксического анализа

reset(boolean)
sempred(RuleContext | undefined, number, number)
setProfile(boolean)
unrollRecursionContexts(ParserRuleContext)

Сведения о конструкторе

CommonRegexParser(TokenStream)

new CommonRegexParser(input: TokenStream)

Параметры

input

TokenStream

Сведения о свойстве

ALC

public static ALC: 44 = 44

Значение свойства

44

Ampersand

public static Ampersand: 43 = 43

Значение свойства

43

AUC

public static AUC: 70 = 70

Значение свойства

70

Backslash

public static Backslash: 10 = 10

Значение свойства

10

BellChar

public static BellChar: 3 = 3

Значение свойства

3

BLC

public static BLC: 45 = 45

Значение свойства

45

BlockQuoted

public static BlockQuoted: 2 = 2

Значение свойства

2

BUC

public static BUC: 71 = 71

Значение свойства

71

Caret

public static Caret: 23 = 23

Значение свойства

23

CarriageReturn

public static CarriageReturn: 8 = 8

Значение свойства

8

CharacterClassEnd

public static CharacterClassEnd: 22 = 22

Значение свойства

22

CharacterClassStart

public static CharacterClassStart: 21 = 21

Значение свойства

21

CharWithoutProperty

public static CharWithoutProperty: 16 = 16

Значение свойства

16

CharWithProperty

public static CharWithProperty: 15 = 15

Значение свойства

15

CLC

public static CLC: 46 = 46

Значение свойства

46

CloseBrace

public static CloseBrace: 29 = 29

Значение свойства

29

CloseParen

public static CloseParen: 34 = 34

Значение свойства

34

Colon

public static Colon: 39 = 39

Значение свойства

39

Comma

public static Comma: 30 = 30

Значение свойства

30

ControlChar

public static ControlChar: 4 = 4

Значение свойства

4

CUC

public static CUC: 72 = 72

Значение свойства

72

D0

public static D0: 105 = 105

Значение свойства

105

D1

public static D1: 96 = 96

Значение свойства

96

D2

public static D2: 97 = 97

Значение свойства

97

D3

public static D3: 98 = 98

Значение свойства

98

D4

public static D4: 99 = 99

Значение свойства

99

D5

public static D5: 100 = 100

Значение свойства

100

D6

public static D6: 101 = 101

Значение свойства

101

D7

public static D7: 102 = 102

Значение свойства

102

D8

public static D8: 103 = 103

Значение свойства

103

D9

public static D9: 104 = 104

Значение свойства

104

DecimalDigit

public static DecimalDigit: 13 = 13

Значение свойства

13

DLC

public static DLC: 47 = 47

Значение свойства

47

Dot

public static Dot: 12 = 12

Значение свойства

12

DUC

public static DUC: 73 = 73

Значение свойства

73

ELC

public static ELC: 48 = 48

Значение свойства

48

EndOfSubject

public static EndOfSubject: 31 = 31

Значение свойства

31

Equals

public static Equals: 41 = 41

Значение свойства

41

EscapeChar

public static EscapeChar: 5 = 5

Значение свойства

5

EUC

public static EUC: 74 = 74

Значение свойства

74

Exclamation

public static Exclamation: 42 = 42

Значение свойства

42

FLC

public static FLC: 49 = 49

Значение свойства

49

FormFeed

public static FormFeed: 6 = 6

Значение свойства

6

FUC

public static FUC: 75 = 75

Значение свойства

75

GLC

public static GLC: 50 = 50

Значение свойства

50

grammarFileName

string grammarFileName

Значение свойства

string

GreaterThan

public static GreaterThan: 36 = 36

Значение свойства

36

GUC

public static GUC: 76 = 76

Значение свойства

76

Hash

public static Hash: 40 = 40

Значение свойства

40

HexChar

public static HexChar: 11 = 11

Значение свойства

11

HLC

public static HLC: 51 = 51

Значение свойства

51

HUC

public static HUC: 77 = 77

Значение свойства

77

Hyphen

public static Hyphen: 24 = 24

Значение свойства

24

ILC

public static ILC: 52 = 52

Значение свойства

52

IUC

public static IUC: 78 = 78

Значение свойства

78

JLC

public static JLC: 53 = 53

Значение свойства

53

JUC

public static JUC: 79 = 79

Значение свойства

79

KLC

public static KLC: 54 = 54

Значение свойства

54

KUC

public static KUC: 80 = 80

Значение свойства

80

LessThan

public static LessThan: 35 = 35

Значение свойства

35

LLC

public static LLC: 55 = 55

Значение свойства

55

LUC

public static LUC: 81 = 81

Значение свойства

81

MLC

public static MLC: 56 = 56

Значение свойства

56

MUC

public static MUC: 82 = 82

Значение свойства

82

NewLine

public static NewLine: 7 = 7

Значение свойства

7

NLC

public static NLC: 57 = 57

Значение свойства

57

NotDecimalDigit

public static NotDecimalDigit: 14 = 14

Значение свойства

14

NotWhiteSpace

public static NotWhiteSpace: 18 = 18

Значение свойства

18

NotWordChar

public static NotWordChar: 20 = 20

Значение свойства

20

NUC

public static NUC: 83 = 83

Значение свойства

83

OLC

public static OLC: 58 = 58

Значение свойства

58

OpenBrace

public static OpenBrace: 28 = 28

Значение свойства

28

OpenParen

public static OpenParen: 33 = 33

Значение свойства

33

OtherChar

public static OtherChar: 106 = 106

Значение свойства

106

OUC

public static OUC: 84 = 84

Значение свойства

84

Pipe

public static Pipe: 32 = 32

Значение свойства

32

PLC

public static PLC: 59 = 59

Значение свойства

59

Plus

public static Plus: 26 = 26

Значение свойства

26

PUC

public static PUC: 85 = 85

Значение свойства

85

QLC

public static QLC: 60 = 60

Значение свойства

60

QUC

public static QUC: 86 = 86

Значение свойства

86

QuestionMark

public static QuestionMark: 25 = 25

Значение свойства

25

Quoted

public static Quoted: 1 = 1

Значение свойства

1

RLC

public static RLC: 61 = 61

Значение свойства

61

RUC

public static RUC: 87 = 87

Значение свойства

87

ruleNames

public static ruleNames: string[] = [
		"parse", "alternation", "expr", "element", "quantifier", "quantifier_type", 
		"character_class", "capture", "non_capture", "option", "option_flag", 
		"atom", "cc_atom", "shared_atom", "literal", "cc_literal", "shared_literal", 
		"number", "octal_char", "octal_digit", "digits", "digit", "name", "alpha_nums", 
		"non_close_parens", "non_close_paren", "letter",
	]

Значение свойства

string[]

ruleNames

string[] ruleNames

Значение свойства

string[]

RULE_alpha_nums

public static RULE_alpha_nums: 23 = 23

Значение свойства

23

RULE_alternation

public static RULE_alternation: 1 = 1

Значение свойства

1

RULE_atom

public static RULE_atom: 11 = 11

Значение свойства

11

RULE_capture

public static RULE_capture: 7 = 7

Значение свойства

7

RULE_cc_atom

public static RULE_cc_atom: 12 = 12

Значение свойства

12

RULE_cc_literal

public static RULE_cc_literal: 15 = 15

Значение свойства

15

RULE_character_class

public static RULE_character_class: 6 = 6

Значение свойства

6

RULE_digit

public static RULE_digit: 21 = 21

Значение свойства

21

RULE_digits

public static RULE_digits: 20 = 20

Значение свойства

20

RULE_element

public static RULE_element: 3 = 3

Значение свойства

3

RULE_expr

public static RULE_expr: 2 = 2

Значение свойства

2

RULE_letter

public static RULE_letter: 26 = 26

Значение свойства

26

RULE_literal

public static RULE_literal: 14 = 14

Значение свойства

14

RULE_name

public static RULE_name: 22 = 22

Значение свойства

22

RULE_non_capture

public static RULE_non_capture: 8 = 8

Значение свойства

8

RULE_non_close_paren

public static RULE_non_close_paren: 25 = 25

Значение свойства

25

RULE_non_close_parens

public static RULE_non_close_parens: 24 = 24

Значение свойства

24

RULE_number

public static RULE_number: 17 = 17

Значение свойства

17

RULE_octal_char

public static RULE_octal_char: 18 = 18

Значение свойства

18

RULE_octal_digit

public static RULE_octal_digit: 19 = 19

Значение свойства

19

RULE_option

public static RULE_option: 9 = 9

Значение свойства

9

RULE_option_flag

public static RULE_option_flag: 10 = 10

Значение свойства

10

RULE_parse

public static RULE_parse: 0 = 0

Значение свойства

0

RULE_quantifier

public static RULE_quantifier: 4 = 4

Значение свойства

4

RULE_quantifier_type

public static RULE_quantifier_type: 5 = 5

Значение свойства

5

RULE_shared_atom

public static RULE_shared_atom: 13 = 13

Значение свойства

13

RULE_shared_literal

public static RULE_shared_literal: 16 = 16

Значение свойства

16

serializedATN

string serializedATN

Значение свойства

string

SingleQuote

public static SingleQuote: 37 = 37

Значение свойства

37

SLC

public static SLC: 62 = 62

Значение свойства

62

Star

public static Star: 27 = 27

Значение свойства

27

SUC

public static SUC: 88 = 88

Значение свойства

88

Tab

public static Tab: 9 = 9

Значение свойства

9

TLC

public static TLC: 63 = 63

Значение свойства

63

TUC

public static TUC: 89 = 89

Значение свойства

89

ULC

public static ULC: 64 = 64

Значение свойства

64

Underscore

public static Underscore: 38 = 38

Значение свойства

38

UUC

public static UUC: 90 = 90

Значение свойства

90

VLC

public static VLC: 65 = 65

Значение свойства

65

VOCABULARY

public static VOCABULARY: Vocabulary = new VocabularyImpl(CommonRegexParser._LITERAL_NAMES, CommonRegexParser._SYMBOLIC_NAMES, [])

Значение свойства

Vocabulary

vocabulary

Vocabulary vocabulary

Значение свойства

Vocabulary

VUC

public static VUC: 91 = 91

Значение свойства

91

WhiteSpace

public static WhiteSpace: 17 = 17

Значение свойства

17

WLC

public static WLC: 66 = 66

Значение свойства

66

WordChar

public static WordChar: 19 = 19

Значение свойства

19

WUC

public static WUC: 92 = 92

Значение свойства

92

XLC

public static XLC: 67 = 67

Значение свойства

67

XUC

public static XUC: 93 = 93

Значение свойства

93

YLC

public static YLC: 68 = 68

Значение свойства

68

YUC

public static YUC: 94 = 94

Значение свойства

94

ZLC

public static ZLC: 69 = 69

Значение свойства

69

ZUC

public static ZUC: 95 = 95

Значение свойства

95

Сведения об унаследованном свойстве

atn

Получение serializedATN, используемой распознавательом для прогнозирования.

atn: ATN

Значение свойства

ATN

наследуется от распознавателя.atn

buildParseTree

Отслеживайте объекты <xref:ParserRuleContext> во время синтаксического анализа и подключите их с помощью списка <xref:ParserRuleContext%23children>, чтобы он формирует дерево синтаксического анализа. <xref:ParserRuleContext>, возвращенный из правила запуска, представляет корень дерева синтаксического анализа. Обратите внимание, что если мы не создадим деревья синтаксического анализа, контексты правил только указывают вверх. Когда правило завершает работу, он возвращает контекст, но получает мусор, собранный, если никто не содержит ссылку. Он указывает вверх, но никто не указывает на него.

При сборке деревьев синтаксического анализа мы добавляем все эти контексты в список <xref:ParserRuleContext%23children>. Контексты затем не являются кандидатами для сборки мусора.

buildParseTree: boolean

Значение свойства

boolean

унаследовано от Parser.buildParseTree

context

context: ParserRuleContext

Значение свойства

ParserRuleContext

Унаследовано от Parser.context

currentToken

Совпадение должно возвращать текущий входной символ, который помещается в метку для связанного маркера ref; Например, x=ID.

currentToken: Token

Значение свойства

Token

наследуется от Parser.currentToken

EOF

static EOF: number

Значение свойства

number

унаследован от распознавателя.EOF

errorHandler

errorHandler: ANTLRErrorStrategy

Значение свойства

ANTLRErrorStrategy

наследуется от Parser.errorHandler

inputStream

Задайте поток маркера и сбросьте средство синтаксического анализа.

inputStream: TokenStream

Значение свойства

TokenStream

наследуется от Parser.inputStream

interpreter

Задайте интерпретатор ATN, используемый распознавательом для прогнозирования.

interpreter: ParserATNSimulator

Значение свойства

ParserATNSimulator

унаследован от Распознаватель.интерпретатор

isMatchedEOF

isMatchedEOF: boolean

Значение свойства

boolean

унаследован от синтаксического анализа.isMatchedEOF

isTrace

Во время синтаксического анализа иногда полезно прослушивать события входа и выхода правила, а также совпадения маркеров. Это для быстрой и грязной отладки.

isTrace: boolean

Значение свойства

boolean

унаследован от Parser.isTrace

numberOfSyntaxErrors

Возвращает количество ошибок синтаксиса, сообщаемых во время синтаксического анализа. Это значение увеличивается при каждом вызове <xref:%23notifyErrorListeners>.

См. #notifyErrorListeners

numberOfSyntaxErrors: number

Значение свойства

number

унаследован от Parser.numberOfSyntaxErrors

parseInfo

parseInfo: Promise<ParseInfo | undefined>

Значение свойства

Promise<ParseInfo | undefined>

унаследован от Parser.parseInfo

precedence

Получите уровень приоритета для правила приоритета верхнего уровня.

precedence: number

Значение свойства

number

унаследовано от Parser.precedence

ruleContext

ruleContext: ParserRuleContext

Значение свойства

ParserRuleContext

унаследован от Parser.ruleContext

sourceName

sourceName: string

Значение свойства

string

наследуется от Parser.sourceName

state

Укажите, что распознаватель изменил внутреннее состояние, которое соответствует состоянию ATN, переданном в. Таким образом, мы всегда знаем, где мы в ATN, как синтаксический анализатор идет вместе. Объекты контекста правила образуют стек, который позволяет увидеть стек вызовов правил. Объедините это, и у нас есть полные сведения о конфигурации ATN.

state: number

Значение свойства

number

унаследован от Распознавателя.state

tokenFactory

tokenFactory: TokenFactory

Значение свойства

TokenFactory

Унаследовано от Parser.tokenFactory

Сведения о методе

alpha_nums()

function alpha_nums(): Alpha_numsContext

Возвращаемое значение

alternation()

function alternation(): AlternationContext

Возвращаемое значение

atom()

function atom(): AtomContext

Возвращаемое значение

capture()

function capture(): CaptureContext

Возвращаемое значение

cc_atom()

function cc_atom(): Cc_atomContext

Возвращаемое значение

cc_literal()

function cc_literal(): Cc_literalContext

Возвращаемое значение

character_class()

function character_class(): Character_classContext

Возвращаемое значение

digit()

function digit(): DigitContext

Возвращаемое значение

digits()

function digits(): DigitsContext

Возвращаемое значение

element()

function element(): ElementContext

Возвращаемое значение

expr()

function expr(): ExprContext

Возвращаемое значение

letter()

function letter(): LetterContext

Возвращаемое значение

literal()

function literal(): LiteralContext

Возвращаемое значение

name()

function name(): NameContext

Возвращаемое значение

non_capture()

function non_capture(): Non_captureContext

Возвращаемое значение

non_close_paren()

function non_close_paren(): Non_close_parenContext

Возвращаемое значение

non_close_parens()

function non_close_parens(): Non_close_parensContext

Возвращаемое значение

number()

function number(): NumberContext

Возвращаемое значение

octal_char()

function octal_char(): Octal_charContext

Возвращаемое значение

octal_digit()

function octal_digit(): Octal_digitContext

Возвращаемое значение

option()

function option(): OptionContext

Возвращаемое значение

option_flag()

function option_flag(): Option_flagContext

Возвращаемое значение

parse()

function parse(): ParseContext

Возвращаемое значение

quantifier()

function quantifier(): QuantifierContext

Возвращаемое значение

quantifier_type()

function quantifier_type(): Quantifier_typeContext

Возвращаемое значение

shared_atom()

function shared_atom(): Shared_atomContext

Возвращаемое значение

shared_literal()

function shared_literal(): Shared_literalContext

Возвращаемое значение

Сведения о наследуемом методе

action(RuleContext | undefined, number, number)

function action(_localctx: RuleContext | undefined, ruleIndex: number, actionIndex: number)

Параметры

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

наследуется от Распознавателя.action

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

Параметры

listener

ANTLRErrorListener<Token>

Наследуется от Распознавателя.addErrorListener

addParseListener(ParseTreeListener)

Регистрирует listener для получения событий во время процесса синтаксического анализа. Чтобы поддерживать преобразования грамматики с сохранением выходных данных (включая, но не ограничивается удалением левого рекурсии, автоматическое создание левого фактора и оптимизированное создание кода), вызовы методов прослушивателя во время синтаксического анализа могут существенно отличаться от вызовов, выполненных <xref:ParseTreeWalker%23DEFAULT>, используемых после завершения синтаксического анализа. В частности, события входа и выхода правил могут возникать в другом порядке во время синтаксического анализа, чем после синтаксического анализа. Кроме того, могут быть опущены вызовы определенных методов входа правила.

При следующих конкретных исключениях вызовы событий прослушивателя детерминированными, т. е. для идентичных входных данных вызовы методов прослушивателя будут одинаковыми.

  • Изменения грамматики, используемой для создания кода, могут изменить поведение вызовов прослушивателя.
  • Изменения параметров командной строки, передаваемых в ANTLR 4 при создании средства синтаксического анализа, могут изменить поведение вызовов прослушивателя.
  • Изменение версии средства ANTLR, используемого для создания средства синтаксического анализа, может изменить поведение вызовов прослушивателя.
function addParseListener(listener: ParseTreeListener)

Параметры

listener

ParseTreeListener

прослушиватель для добавления

наследуется от Parser.addParseListener

compileParseTreePattern(string, number)

Предпочтительный метод получения шаблона дерева. Например, вот пример использования:

let t: ParseTree = parser.expr();
let p: ParseTreePattern = await parser.compileParseTreePattern("<ID>+0", MyParser.RULE_expr);
let m: ParseTreeMatch = p.match(t);
let id: string = m.get("ID");
function compileParseTreePattern(pattern: string, patternRuleIndex: number): Promise<ParseTreePattern>

Параметры

pattern

string

patternRuleIndex

number

Возвращаемое значение

Promise<ParseTreePattern>

наследуется от Parser.compileParseTreePattern

compileParseTreePattern(string, number, Lexer)

То же, что и [int)](xref:%23compileParseTreePattern(строка%2C) но укажите CommonRegexLexer вместо попытки вывести его из этого средства синтаксического анализа.

function compileParseTreePattern(pattern: string, patternRuleIndex: number, lexer?: Lexer): Promise<ParseTreePattern>

Параметры

pattern

string

patternRuleIndex

number

lexer

Lexer

Возвращаемое значение

Promise<ParseTreePattern>

наследуется от Parser.compileParseTreePattern

consume()

Потреблять и возвращать текущий символ. Например, учитывая следующие входные данные с A быть текущим символом lookahead, эта функция перемещает курсор в B и возвращает A.

A B
^

Если средство синтаксического анализа не находится в режиме восстановления ошибок, используемый символ добавляется в дерево синтаксического анализа с помощью <xref:ParserRuleContext%23addChild(TerminalNode)>, а <xref:ParseTreeListener%23visitTerminal> вызывается для всех прослушивателей синтаксического анализа. Если средство синтаксического анализа в режиме восстановления ошибок, используемый символ добавляется в дерево синтаксического анализа с помощью [Token)](xref:%23createErrorNode(ParserRuleContext%2C), то <xref:ParserRuleContext%23addErrorNode(ErrorNode)> и <xref:ParseTreeListener%23visitErrorNode> вызывается для любого прослушивателя синтаксического анализа.

function consume(): Token

Возвращаемое значение

Token

наследуется от parser.consume

createErrorNode(ParserRuleContext, Token)

Создание узла ошибки, заданного маркером, связанного с родительским элементом. Как правило, создаваемый узел ошибки не является функцией родительского элемента.

function createErrorNode(parent: ParserRuleContext, t: Token): ErrorNode

Параметры

parent

ParserRuleContext

t

Token

Возвращаемое значение

ErrorNode

наследуется от Parser.createErrorNode

createTerminalNode(ParserRuleContext, Token)

Создание конечного узла маркера, связанного с родительским элементом. Как правило, создаваемый узел терминала не является функцией родительского элемента.

function createTerminalNode(parent: ParserRuleContext, t: Token): TerminalNode

Параметры

parent

ParserRuleContext

t

Token

Возвращаемое значение

TerminalNode

унаследован от Parser.createTerminalNode

dumpDFA()

Для отладки и других целей.

function dumpDFA()

унаследован от Parser.dumpDFA

enterLeftFactoredRule(ParserRuleContext, number, number)

function enterLeftFactoredRule(localctx: ParserRuleContext, state: number, ruleIndex: number)

Параметры

localctx

ParserRuleContext

state

number

ruleIndex

number

наследуется от Parser.enterLeftFactoredRule

enterOuterAlt(ParserRuleContext, number)

function enterOuterAlt(localctx: ParserRuleContext, altNum: number)

Параметры

localctx

ParserRuleContext

altNum

number

наследуется от Parser.enterOuterAlt

enterRecursionRule(ParserRuleContext, number, number, number)

function enterRecursionRule(localctx: ParserRuleContext, state: number, ruleIndex: number, precedence: number)

Параметры

localctx

ParserRuleContext

state

number

ruleIndex

number

precedence

number

наследуется от Parser.enterRecursionRule

enterRule(ParserRuleContext, number, number)

Всегда вызывается созданными средствами синтаксического анализа при входе в правило. Поле доступа <xref:%23_ctx> получить текущий контекст.

function enterRule(localctx: ParserRuleContext, state: number, ruleIndex: number)

Параметры

localctx

ParserRuleContext

state

number

ruleIndex

number

наследуется от Parser.enterRule

exitRule()

function exitRule()

унаследован от Parser.exitRule

getATNWithBypassAlts()

ATN с альтернативами обхода является дорогостоящим для создания, поэтому мы создадим его лениво. @ , если текущий синтаксический анализ не реализует свойство serializedATN.

function getATNWithBypassAlts(): ATN

Возвращаемое значение

ATN

унаследован от Parser.getATNWithBypassAlts

getDFAStrings()

Для отладки и других целей.

function getDFAStrings(): string[]

Возвращаемое значение

string[]

наследуется от Parser.getDFAStrings

getErrorHeader(RecognitionException)

Что такое заголовок ошибки, как правило, сведения о позиции строки или символа?

function getErrorHeader(e: RecognitionException): string

Параметры

e

RecognitionException

Возвращаемое значение

string

наследуется от распознавателя.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

Возвращаемое значение

ParserErrorListener

унаследован от Parser.getErrorListenerDispatch

getErrorListeners()

function getErrorListeners(): Array<ANTLRErrorListener<Token>>

Возвращаемое значение

Array<ANTLRErrorListener<Token>>

наследуется от Распознавателя.getErrorListeners

getExpectedTokens()

Вычисляет набор входных символов, которые могут следовать текущему состоянию и контексту синтаксического анализа, как указано в <xref:%23getState> и <xref:%23getContext>соответственно.

См. atN#getExpectedTokens(int, RuleContext)

function getExpectedTokens(): IntervalSet

Возвращаемое значение

IntervalSet

унаследован от Parser.getExpectedTokens

getExpectedTokensWithinCurrentRule()

function getExpectedTokensWithinCurrentRule(): IntervalSet

Возвращаемое значение

IntervalSet

унаследован от Parser.getExpectedTokensWithinCurrentRule

getInvokingContext(number)

function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined

Параметры

ruleIndex

number

Возвращаемое значение

ParserRuleContext | undefined

унаследован от Parser.getInvokingContext

getParseListeners()

function getParseListeners(): ParseTreeListener[]

Возвращаемое значение

ParseTreeListener[]

унаследован от Parser.getParseListeners

getRuleIndex(string)

Получите индекс правила (например, поле RULE_ruleName) или -1, если он не найден.

function getRuleIndex(ruleName: string): number

Параметры

ruleName

string

Возвращаемое значение

number

унаследован от Parser.getRuleIndex

getRuleIndexMap()

Получение карты из имен правил в индексы правил. Используется для компиляции шаблонов XPath и дерева.

function getRuleIndexMap(): ReadonlyMap<string, number>

Возвращаемое значение

ReadonlyMap<string, number>

наследуется от распознавателя.getRuleIndexMap

getRuleInvocationStack(RuleContext)

Возвращаемый список<строка> имен правил в экземпляре синтаксического анализа, что приводит к вызову текущего правила. Вы можете переопределить, если требуется дополнительные сведения, например сведения о файле или строке, где вызывается правило ATN. Это очень полезно для сообщений об ошибках.

function getRuleInvocationStack(ctx?: RuleContext): string[]

Параметры

ctx

RuleContext

Возвращаемое значение

string[]

наследуется от Parser.getRuleInvocationStack

getTokenType(string)

function getTokenType(tokenName: string): number

Параметры

tokenName

string

Возвращаемое значение

number

наследуется от распознавателя.getTokenType

getTokenTypeMap()

Получение карты от имен маркеров к типам маркеров. Используется для компиляции шаблонов XPath и дерева.

function getTokenTypeMap(): ReadonlyMap<string, number>

Возвращаемое значение

ReadonlyMap<string, number>

наследуется от распознавателя.getTokenTypeMap

inContext(string)

function inContext(context: string): boolean

Параметры

context

string

Возвращаемое значение

boolean

унаследован от Parser.inContext

isExpectedToken(number)

Проверяет, может ли symbol следовать текущему состоянию в ATN. Поведение этого метода эквивалентно следующему, но реализуется таким образом, чтобы полный контекстно-чувствительный набор не должен быть создан явным образом.

return getExpectedTokens().contains(symbol);
function isExpectedToken(symbol: number): boolean

Параметры

symbol

number

Тип символа для проверки

Возвращаемое значение

boolean

true, если symbol могут следовать текущему состоянию в ATN, в противном случае false.

унаследован от Parser.isExpectedToken

match(number)

Сопоставление текущего входного символа с ttype. Если тип символа совпадает, вызов <xref:ANTLRErrorStrategy%23reportMatch> и <xref:%23consume> для завершения процесса сопоставления. Если тип символа не соответствует, <xref:ANTLRErrorStrategy%23recoverInline> вызывается в текущей стратегии ошибок для попытки восстановления. Если <xref:%23getBuildParseTree>true и индекс маркера символа, возвращаемого <xref:ANTLRErrorStrategy%23recoverInline> равно -1, символ добавляется в дерево синтаксического анализа путем вызова [token)](xref:%23createErrorNode(ParserRuleContext%2C), а затем <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function match(ttype: number): Token

Параметры

ttype

number

Тип маркера, соответствующий

Возвращаемое значение

Token

соответствующий символ @ если текущий входной символ не соответствует ttype, а стратегия ошибок не может восстановиться из несогласованного символа.

Наследуется от Parser.match

matchWildcard()

Сопоставлять текущий входной символ как подстановочный знак. Если тип символа совпадает (т. е. имеет значение больше 0), <xref:ANTLRErrorStrategy%23reportMatch> и <xref:%23consume> вызываются для завершения процесса сопоставления. Если тип символа не соответствует, <xref:ANTLRErrorStrategy%23recoverInline> вызывается в текущей стратегии ошибок для попытки восстановления. Если <xref:%23getBuildParseTree>true и индекс маркера символа, возвращаемого <xref:ANTLRErrorStrategy%23recoverInline> равно -1, символ добавляется в дерево синтаксического анализа путем вызова [token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) и <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function matchWildcard(): Token

Возвращаемое значение

Token

соответствующий символ @, если текущий входной символ не совпадает с подстановочным знаком, и стратегия ошибок не может восстановиться после несогласованного символа.

унаследован от Parser.matchWildcard

notifyErrorListeners(string)

function notifyErrorListeners(msg: string)

Параметры

msg

string

наследуется от Parser.notifyErrorListeners

notifyErrorListeners(string, Token | null, RecognitionException | undefined)

function notifyErrorListeners(msg: string, offendingToken: Token | null, e: RecognitionException | undefined)

Параметры

msg

string

offendingToken

Token | null

e

RecognitionException | undefined

наследуется от Parser.notifyErrorListeners

precpred(RuleContext, number)

function precpred(localctx: RuleContext, precedence: number): boolean

Параметры

localctx

RuleContext

precedence

number

Возвращаемое значение

boolean

унаследован от Parser.precpred

pushNewRecursionContext(ParserRuleContext, number, number)

Как и <xref:%23enterRule>, но для рекурсивных правил. Сделайте текущий контекст дочерним элементом входящего localctx.

function pushNewRecursionContext(localctx: ParserRuleContext, state: number, ruleIndex: number)

Параметры

localctx

ParserRuleContext

state

number

ruleIndex

number

унаследован от Parser.pushNewRecursionContext

removeErrorListener(ANTLRErrorListener<Token>)

function removeErrorListener(listener: ANTLRErrorListener<Token>)

Параметры

listener

ANTLRErrorListener<Token>

наследуется от Распознаватель.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

наследуется от Распознавателя.removeErrorListeners

removeParseListener(ParseTreeListener)

Удалите listener из списка прослушивателей синтаксического анализа. Если listenerundefined или не добавлен в качестве прослушивателя синтаксического анализа, этот метод ничего не делает.

См. #addParseListener

function removeParseListener(listener: ParseTreeListener)

Параметры

listener

ParseTreeListener

прослушиватель для удаления

наследуется от Parser.removeParseListener

removeParseListeners()

Удалите все прослушиватели синтаксического анализа.

См. #addParseListener

function removeParseListeners()

наследуется от Parser.removeParseListeners

reset()

сброс состояния синтаксического анализа

function reset()

наследуется от синтаксического анализа.reset

reset(boolean)

function reset(resetInput: boolean)

Параметры

resetInput

boolean

наследуется от синтаксического анализа.reset

sempred(RuleContext | undefined, number, number)

function sempred(_localctx: RuleContext | undefined, ruleIndex: number, actionIndex: number): boolean

Параметры

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Возвращаемое значение

boolean

унаследован от Распознавателя.sempred

setProfile(boolean)

function setProfile(profile: boolean): Promise<void>

Параметры

profile

boolean

Возвращаемое значение

Promise<void>

унаследовано от Parser.setProfile

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

Параметры

_parentctx

ParserRuleContext

наследуется от Parser.unrollRecursionContexts