CommonRegexParser class

Extends

Parser

Construtores

CommonRegexParser(TokenStream)

Propriedades

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

Propriedades herdadas

atn

Obtenha o serializedATN usado pelo reconhecedor para previsão.

buildParseTree

Acompanhe os <xref:ParserRuleContext> objetos durante a análise e conecte-os usando a <xref:ParserRuleContext%23children> lista para que ele forme uma árvore de análise. O <xref:ParserRuleContext> retornado da regra inicial representa a raiz da árvore de análise. Observe que, se não estivermos criando árvores de análise, os contextos de regra apontarão apenas para cima. Quando uma regra é encerrada, ela retorna o contexto, mas isso obtém o lixo coletado se ninguém mantém uma referência. Aponta para cima, mas ninguém aponta para ele.

Quando criamos árvores de análise, estamos adicionando todos esses contextos à <xref:ParserRuleContext%23children> lista. Em seguida, os contextos não são candidatos à coleta de lixo.

context
currentToken

A correspondência precisa retornar o símbolo de entrada atual, que é colocado no rótulo do ref de token associado; por exemplo, x=ID.

EOF
errorHandler
inputStream

Defina o fluxo de token e redefina o analisador.

interpreter

Defina o interpretador de ATN usado pelo reconhecedor para previsão.

isMatchedEOF
isTrace

Durante uma análise, às vezes, é útil escutar os eventos de entrada e saída da regra, bem como correspondências de token. Isso é para depuração rápida e suja.

numberOfSyntaxErrors

Obtém o número de erros de sintaxe relatados durante a análise. Esse valor é incrementado sempre que <xref:%23notifyErrorListeners> é chamado.

Consulte #notifyErrorListeners

parseInfo
precedence

Obtenha o nível de precedência para a regra de precedência mais alta.

ruleContext
sourceName
state

Indique que o reconhecedor alterou o estado interno que é consistente com o estado atn passado. Dessa forma, sempre sabemos onde estamos na ATN à medida que o analisador avança. Os objetos de contexto de regra formam uma pilha que nos permite ver a pilha de regras de invocação. Combine isso e temos informações completas de configuração da ATN.

tokenFactory

Métodos

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()

Métodos herdados

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

listener Registra-se para receber eventos durante o processo de análise. Para dar suporte a transformações gramaticais de preservação de saída (incluindo, mas não se limitando à remoção de recursão à esquerda, fatoração esquerda automatizada e geração de código otimizada), as chamadas aos métodos de ouvinte durante a análise podem diferir substancialmente das chamadas feitas pelo <xref:ParseTreeWalker%23DEFAULT> usado após a conclusão da análise. Em particular, os eventos de entrada e saída da regra podem ocorrer em uma ordem diferente durante a análise do que após o analisador. Além disso, chamadas para determinados métodos de entrada de regra podem ser omitidas.

Com as exceções específicas a seguir, as chamadas para eventos de ouvinte são determinísticas, ou seja, para entrada idêntica, as chamadas aos métodos de ouvinte serão as mesmas.

  • Alterações na gramática usada para gerar código podem alterar o comportamento das chamadas do ouvinte.
  • Alterações nas opções de linha de comando passadas para ANTLR 4 ao gerar o analisador podem alterar o comportamento das chamadas do ouvinte.
  • Alterar a versão da Ferramenta ANTLR usada para gerar o analisador pode alterar o comportamento das chamadas do ouvinte.
compileParseTreePattern(string, number)

O método preferencial de obter um padrão de árvore. Por exemplo, aqui está um exemplo de uso:

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)

O mesmo que [int)](xref:%23compileParseTreePattern(String%2C), mas especifique um CommonRegexLexer em vez de tentar deduzê-lo desse analisador.

consume()

Consumir e retornar o símbolo atual. Por exemplo, dada a entrada a seguir por A ser o símbolo lookahead atual, essa função move o cursor para B e retorna A.

A B
^

Se o analisador não estiver no modo de recuperação de erro, o símbolo consumido será adicionado à árvore de análise usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> será chamado em qualquer ouvinte de análise. Se o analisador estiver no modo de recuperação de erro, o símbolo consumido será adicionado à árvore de análise usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) <xref:ParserRuleContext%23addErrorNode(ErrorNode)> e <xref:ParseTreeListener%23visitErrorNode> será chamado em qualquer ouvinte de análise.

createErrorNode(ParserRuleContext, Token)

Como criar um nó de erro, dado um token, associado a um pai. Normalmente, o nó de erro a ser criado não é uma função do pai.

createTerminalNode(ParserRuleContext, Token)

Como criar um nó folha de token associado a um pai. Normalmente, o nó de terminal a ser criado não é uma função do pai.

dumpDFA()

Para depuração e outras finalidades.

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

Sempre chamado por analisadores gerados na entrada de uma regra. O campo <xref:%23_ctx> de acesso obtém o contexto atual.

exitRule()
getATNWithBypassAlts()

A ATN com alternativas de bypass é cara de criar, portanto, a criamos lentamente. @ se o analisador atual não implementar a serializedATN propriedade .

getDFAStrings()

Para depuração e outras finalidades.

getErrorHeader(RecognitionException)

Qual é o cabeçalho de erro, normalmente informações de posição de linha/caractere?

getErrorListenerDispatch()
getErrorListeners()
getExpectedTokens()

Calcula o conjunto de símbolos de entrada que podem seguir o estado e o contexto atuais do analisador, conforme fornecido por <xref:%23getState> e <xref:%23getContext>, respectivamente.

Consulte ATN#getExpectedTokens(int, RuleContext)

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

Obtenha o índice de uma regra (ou seja, campo RULE_ruleName ) ou -1 se não for encontrado.

getRuleIndexMap()

Obtenha um mapa de nomes de regras para índices de regra. Usado para compilação de XPath e padrão de árvore.

getRuleInvocationStack(RuleContext)

Retornar Cadeia de Caracteres> de Lista<dos nomes de regra na instância do analisador que leva a uma chamada para a regra atual. Você pode substituir se quiser mais detalhes, como as informações de arquivo/linha de onde no ATN uma regra é invocada. Isso é muito útil para mensagens de erro.

getTokenType(string)
getTokenTypeMap()

Obtenha um mapa de nomes de token para tipos de token. Usado para compilação de XPath e padrão de árvore.

inContext(string)
isExpectedToken(number)

Verifica se é possível ou não symbol seguir o estado atual no ATN. O comportamento desse método é equivalente ao seguinte, mas é implementado de modo que o conjunto de itens a seguir contextual completo não precise ser construído explicitamente.

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

Corresponda ao símbolo de entrada atual com ttype. Se o tipo de símbolo corresponder <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> for chamado para concluir o processo de correspondência. Se o tipo de símbolo não corresponder, <xref:ANTLRErrorStrategy%23recoverInline> será chamado na estratégia de erro atual para tentar a recuperação. Se <xref:%23getBuildParseTree> for true e o índice de token do símbolo retornado por <xref:ANTLRErrorStrategy%23recoverInline> for -1, o símbolo será adicionado à árvore de análise chamando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) e .<xref:ParserRuleContext%23addErrorNode(ErrorNode)>

matchWildcard()

Corresponder ao símbolo de entrada atual como um curinga. Se o tipo de símbolo corresponder (ou seja, tiver um valor maior que 0) <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> for chamado para concluir o processo de correspondência. Se o tipo de símbolo não corresponder, <xref:ANTLRErrorStrategy%23recoverInline> será chamado na estratégia de erro atual para tentar a recuperação. Se <xref:%23getBuildParseTree> for true e o índice de token do símbolo retornado por <xref:ANTLRErrorStrategy%23recoverInline> for -1, o símbolo será adicionado à árvore de análise chamando [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) e .<xref:ParserRuleContext%23addErrorNode(ErrorNode)>

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

Como <xref:%23enterRule> , mas para regras recursivas. Torne o contexto atual o filho do localctx de entrada.

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

Remova listener da lista de ouvintes de análise. Se listener for undefined ou não tiver sido adicionado como um ouvinte de análise, esse método não fará nada.

Consulte #addParseListener

removeParseListeners()

Remova todos os ouvintes de análise.

Consulte #addParseListener

reset()

redefinir o estado do analisador

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

Detalhes do construtor

CommonRegexParser(TokenStream)

new CommonRegexParser(input: TokenStream)

Parâmetros

input

TokenStream

Detalhes da propriedade

ALC

public static ALC: 44 = 44

Valor da propriedade

44

Ampersand

public static Ampersand: 43 = 43

Valor da propriedade

43

AUC

public static AUC: 70 = 70

Valor da propriedade

70

Backslash

public static Backslash: 10 = 10

Valor da propriedade

10

BellChar

public static BellChar: 3 = 3

Valor da propriedade

3

BLC

public static BLC: 45 = 45

Valor da propriedade

45

BlockQuoted

public static BlockQuoted: 2 = 2

Valor da propriedade

2

BUC

public static BUC: 71 = 71

Valor da propriedade

71

Caret

public static Caret: 23 = 23

Valor da propriedade

23

CarriageReturn

public static CarriageReturn: 8 = 8

Valor da propriedade

8

CharacterClassEnd

public static CharacterClassEnd: 22 = 22

Valor da propriedade

22

CharacterClassStart

public static CharacterClassStart: 21 = 21

Valor da propriedade

21

CharWithoutProperty

public static CharWithoutProperty: 16 = 16

Valor da propriedade

16

CharWithProperty

public static CharWithProperty: 15 = 15

Valor da propriedade

15

CLC

public static CLC: 46 = 46

Valor da propriedade

46

CloseBrace

public static CloseBrace: 29 = 29

Valor da propriedade

29

CloseParen

public static CloseParen: 34 = 34

Valor da propriedade

34

Colon

public static Colon: 39 = 39

Valor da propriedade

39

Comma

public static Comma: 30 = 30

Valor da propriedade

30

ControlChar

public static ControlChar: 4 = 4

Valor da propriedade

4

CUC

public static CUC: 72 = 72

Valor da propriedade

72

D0

public static D0: 105 = 105

Valor da propriedade

105

D1

public static D1: 96 = 96

Valor da propriedade

96

D2

public static D2: 97 = 97

Valor da propriedade

97

D3

public static D3: 98 = 98

Valor da propriedade

98

D4

public static D4: 99 = 99

Valor da propriedade

99

D5

public static D5: 100 = 100

Valor da propriedade

100

D6

public static D6: 101 = 101

Valor da propriedade

101

D7

public static D7: 102 = 102

Valor da propriedade

102

D8

public static D8: 103 = 103

Valor da propriedade

103

D9

public static D9: 104 = 104

Valor da propriedade

104

DecimalDigit

public static DecimalDigit: 13 = 13

Valor da propriedade

13

DLC

public static DLC: 47 = 47

Valor da propriedade

47

Dot

public static Dot: 12 = 12

Valor da propriedade

12

DUC

public static DUC: 73 = 73

Valor da propriedade

73

ELC

public static ELC: 48 = 48

Valor da propriedade

48

EndOfSubject

public static EndOfSubject: 31 = 31

Valor da propriedade

31

Equals

public static Equals: 41 = 41

Valor da propriedade

41

EscapeChar

public static EscapeChar: 5 = 5

Valor da propriedade

5

EUC

public static EUC: 74 = 74

Valor da propriedade

74

Exclamation

public static Exclamation: 42 = 42

Valor da propriedade

42

FLC

public static FLC: 49 = 49

Valor da propriedade

49

FormFeed

public static FormFeed: 6 = 6

Valor da propriedade

6

FUC

public static FUC: 75 = 75

Valor da propriedade

75

GLC

public static GLC: 50 = 50

Valor da propriedade

50

grammarFileName

string grammarFileName

Valor da propriedade

string

GreaterThan

public static GreaterThan: 36 = 36

Valor da propriedade

36

GUC

public static GUC: 76 = 76

Valor da propriedade

76

Hash

public static Hash: 40 = 40

Valor da propriedade

40

HexChar

public static HexChar: 11 = 11

Valor da propriedade

11

HLC

public static HLC: 51 = 51

Valor da propriedade

51

HUC

public static HUC: 77 = 77

Valor da propriedade

77

Hyphen

public static Hyphen: 24 = 24

Valor da propriedade

24

ILC

public static ILC: 52 = 52

Valor da propriedade

52

IUC

public static IUC: 78 = 78

Valor da propriedade

78

JLC

public static JLC: 53 = 53

Valor da propriedade

53

JUC

public static JUC: 79 = 79

Valor da propriedade

79

KLC

public static KLC: 54 = 54

Valor da propriedade

54

KUC

public static KUC: 80 = 80

Valor da propriedade

80

LessThan

public static LessThan: 35 = 35

Valor da propriedade

35

LLC

public static LLC: 55 = 55

Valor da propriedade

55

LUC

public static LUC: 81 = 81

Valor da propriedade

81

MLC

public static MLC: 56 = 56

Valor da propriedade

56

MUC

public static MUC: 82 = 82

Valor da propriedade

82

NewLine

public static NewLine: 7 = 7

Valor da propriedade

7

NLC

public static NLC: 57 = 57

Valor da propriedade

57

NotDecimalDigit

public static NotDecimalDigit: 14 = 14

Valor da propriedade

14

NotWhiteSpace

public static NotWhiteSpace: 18 = 18

Valor da propriedade

18

NotWordChar

public static NotWordChar: 20 = 20

Valor da propriedade

20

NUC

public static NUC: 83 = 83

Valor da propriedade

83

OLC

public static OLC: 58 = 58

Valor da propriedade

58

OpenBrace

public static OpenBrace: 28 = 28

Valor da propriedade

28

OpenParen

public static OpenParen: 33 = 33

Valor da propriedade

33

OtherChar

public static OtherChar: 106 = 106

Valor da propriedade

106

OUC

public static OUC: 84 = 84

Valor da propriedade

84

Pipe

public static Pipe: 32 = 32

Valor da propriedade

32

PLC

public static PLC: 59 = 59

Valor da propriedade

59

Plus

public static Plus: 26 = 26

Valor da propriedade

26

PUC

public static PUC: 85 = 85

Valor da propriedade

85

QLC

public static QLC: 60 = 60

Valor da propriedade

60

QUC

public static QUC: 86 = 86

Valor da propriedade

86

QuestionMark

public static QuestionMark: 25 = 25

Valor da propriedade

25

Quoted

public static Quoted: 1 = 1

Valor da propriedade

1

RLC

public static RLC: 61 = 61

Valor da propriedade

61

RUC

public static RUC: 87 = 87

Valor da propriedade

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",
	]

Valor da propriedade

string[]

ruleNames

string[] ruleNames

Valor da propriedade

string[]

RULE_alpha_nums

public static RULE_alpha_nums: 23 = 23

Valor da propriedade

23

RULE_alternation

public static RULE_alternation: 1 = 1

Valor da propriedade

1

RULE_atom

public static RULE_atom: 11 = 11

Valor da propriedade

11

RULE_capture

public static RULE_capture: 7 = 7

Valor da propriedade

7

RULE_cc_atom

public static RULE_cc_atom: 12 = 12

Valor da propriedade

12

RULE_cc_literal

public static RULE_cc_literal: 15 = 15

Valor da propriedade

15

RULE_character_class

public static RULE_character_class: 6 = 6

Valor da propriedade

6

RULE_digit

public static RULE_digit: 21 = 21

Valor da propriedade

21

RULE_digits

public static RULE_digits: 20 = 20

Valor da propriedade

20

RULE_element

public static RULE_element: 3 = 3

Valor da propriedade

3

RULE_expr

public static RULE_expr: 2 = 2

Valor da propriedade

2

RULE_letter

public static RULE_letter: 26 = 26

Valor da propriedade

26

RULE_literal

public static RULE_literal: 14 = 14

Valor da propriedade

14

RULE_name

public static RULE_name: 22 = 22

Valor da propriedade

22

RULE_non_capture

public static RULE_non_capture: 8 = 8

Valor da propriedade

8

RULE_non_close_paren

public static RULE_non_close_paren: 25 = 25

Valor da propriedade

25

RULE_non_close_parens

public static RULE_non_close_parens: 24 = 24

Valor da propriedade

24

RULE_number

public static RULE_number: 17 = 17

Valor da propriedade

17

RULE_octal_char

public static RULE_octal_char: 18 = 18

Valor da propriedade

18

RULE_octal_digit

public static RULE_octal_digit: 19 = 19

Valor da propriedade

19

RULE_option

public static RULE_option: 9 = 9

Valor da propriedade

9

RULE_option_flag

public static RULE_option_flag: 10 = 10

Valor da propriedade

10

RULE_parse

public static RULE_parse: 0 = 0

Valor da propriedade

0

RULE_quantifier

public static RULE_quantifier: 4 = 4

Valor da propriedade

4

RULE_quantifier_type

public static RULE_quantifier_type: 5 = 5

Valor da propriedade

5

RULE_shared_atom

public static RULE_shared_atom: 13 = 13

Valor da propriedade

13

RULE_shared_literal

public static RULE_shared_literal: 16 = 16

Valor da propriedade

16

serializedATN

string serializedATN

Valor da propriedade

string

SingleQuote

public static SingleQuote: 37 = 37

Valor da propriedade

37

SLC

public static SLC: 62 = 62

Valor da propriedade

62

Star

public static Star: 27 = 27

Valor da propriedade

27

SUC

public static SUC: 88 = 88

Valor da propriedade

88

Tab

public static Tab: 9 = 9

Valor da propriedade

9

TLC

public static TLC: 63 = 63

Valor da propriedade

63

TUC

public static TUC: 89 = 89

Valor da propriedade

89

ULC

public static ULC: 64 = 64

Valor da propriedade

64

Underscore

public static Underscore: 38 = 38

Valor da propriedade

38

UUC

public static UUC: 90 = 90

Valor da propriedade

90

VLC

public static VLC: 65 = 65

Valor da propriedade

65

VOCABULARY

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

Valor da propriedade

Vocabulary

vocabulary

Vocabulary vocabulary

Valor da propriedade

Vocabulary

VUC

public static VUC: 91 = 91

Valor da propriedade

91

WhiteSpace

public static WhiteSpace: 17 = 17

Valor da propriedade

17

WLC

public static WLC: 66 = 66

Valor da propriedade

66

WordChar

public static WordChar: 19 = 19

Valor da propriedade

19

WUC

public static WUC: 92 = 92

Valor da propriedade

92

XLC

public static XLC: 67 = 67

Valor da propriedade

67

XUC

public static XUC: 93 = 93

Valor da propriedade

93

YLC

public static YLC: 68 = 68

Valor da propriedade

68

YUC

public static YUC: 94 = 94

Valor da propriedade

94

ZLC

public static ZLC: 69 = 69

Valor da propriedade

69

ZUC

public static ZUC: 95 = 95

Valor da propriedade

95

Detalhes das propriedades herdadas

atn

Obtenha o serializedATN usado pelo reconhecedor para previsão.

atn: ATN

Valor da propriedade

ATN

Herdado de Recognizer.atn

buildParseTree

Acompanhe os <xref:ParserRuleContext> objetos durante a análise e conecte-os usando a <xref:ParserRuleContext%23children> lista para que ele forme uma árvore de análise. O <xref:ParserRuleContext> retornado da regra inicial representa a raiz da árvore de análise. Observe que, se não estivermos criando árvores de análise, os contextos de regra apontarão apenas para cima. Quando uma regra é encerrada, ela retorna o contexto, mas isso obtém o lixo coletado se ninguém mantém uma referência. Aponta para cima, mas ninguém aponta para ele.

Quando criamos árvores de análise, estamos adicionando todos esses contextos à <xref:ParserRuleContext%23children> lista. Em seguida, os contextos não são candidatos à coleta de lixo.

buildParseTree: boolean

Valor da propriedade

boolean

Herdado de Parser.buildParseTree

context

context: ParserRuleContext

Valor da propriedade

ParserRuleContext

Herdado de Parser.context

currentToken

A correspondência precisa retornar o símbolo de entrada atual, que é colocado no rótulo do ref de token associado; por exemplo, x=ID.

currentToken: Token

Valor da propriedade

Token

Herdado de Parser.currentToken

EOF

static EOF: number

Valor da propriedade

number

Herdado de Recognizer.EOF

errorHandler

errorHandler: ANTLRErrorStrategy

Valor da propriedade

ANTLRErrorStrategy

Herdado de Parser.errorHandler

inputStream

Defina o fluxo de token e redefina o analisador.

inputStream: TokenStream

Valor da propriedade

TokenStream

Herdado de Parser.inputStream

interpreter

Defina o interpretador de ATN usado pelo reconhecedor para previsão.

interpreter: ParserATNSimulator

Valor da propriedade

ParserATNSimulator

Herdado de Recognizer.interprete

isMatchedEOF

isMatchedEOF: boolean

Valor da propriedade

boolean

Herdado de Parser.isMatchedEOF

isTrace

Durante uma análise, às vezes, é útil escutar os eventos de entrada e saída da regra, bem como correspondências de token. Isso é para depuração rápida e suja.

isTrace: boolean

Valor da propriedade

boolean

Herdado de Parser.isTrace

numberOfSyntaxErrors

Obtém o número de erros de sintaxe relatados durante a análise. Esse valor é incrementado sempre que <xref:%23notifyErrorListeners> é chamado.

Consulte #notifyErrorListeners

numberOfSyntaxErrors: number

Valor da propriedade

number

Herdado de Parser.numberOfSyntaxErrors

parseInfo

parseInfo: Promise<ParseInfo | undefined>

Valor da propriedade

Promise<ParseInfo | undefined>

Herdado de Parser.parseInfo

precedence

Obtenha o nível de precedência para a regra de precedência mais alta.

precedence: number

Valor da propriedade

number

Herdado de Parser.precedence

ruleContext

ruleContext: ParserRuleContext

Valor da propriedade

ParserRuleContext

Herdado de Parser.ruleContext

sourceName

sourceName: string

Valor da propriedade

string

Herdado de Parser.sourceName

state

Indique que o reconhecedor alterou o estado interno que é consistente com o estado atn passado. Dessa forma, sempre sabemos onde estamos na ATN à medida que o analisador avança. Os objetos de contexto de regra formam uma pilha que nos permite ver a pilha de regras de invocação. Combine isso e temos informações completas de configuração da ATN.

state: number

Valor da propriedade

number

Herdado de Recognizer.state

tokenFactory

tokenFactory: TokenFactory

Valor da propriedade

TokenFactory

Herdado de Parser.tokenFactory

Detalhes do método

alpha_nums()

function alpha_nums(): Alpha_numsContext

Retornos

alternation()

function alternation(): AlternationContext

Retornos

atom()

function atom(): AtomContext

Retornos

capture()

function capture(): CaptureContext

Retornos

cc_atom()

function cc_atom(): Cc_atomContext

Retornos

cc_literal()

function cc_literal(): Cc_literalContext

Retornos

character_class()

function character_class(): Character_classContext

Retornos

digit()

function digit(): DigitContext

Retornos

digits()

function digits(): DigitsContext

Retornos

element()

function element(): ElementContext

Retornos

expr()

function expr(): ExprContext

Retornos

letter()

function letter(): LetterContext

Retornos

literal()

function literal(): LiteralContext

Retornos

name()

function name(): NameContext

Retornos

non_capture()

function non_capture(): Non_captureContext

Retornos

non_close_paren()

function non_close_paren(): Non_close_parenContext

Retornos

non_close_parens()

function non_close_parens(): Non_close_parensContext

Retornos

number()

function number(): NumberContext

Retornos

octal_char()

function octal_char(): Octal_charContext

Retornos

octal_digit()

function octal_digit(): Octal_digitContext

Retornos

option()

function option(): OptionContext

Retornos

option_flag()

function option_flag(): Option_flagContext

Retornos

parse()

function parse(): ParseContext

Retornos

quantifier()

function quantifier(): QuantifierContext

Retornos

quantifier_type()

function quantifier_type(): Quantifier_typeContext

Retornos

shared_atom()

function shared_atom(): Shared_atomContext

Retornos

shared_literal()

function shared_literal(): Shared_literalContext

Retornos

Detalhes do método herdado

action(RuleContext | undefined, number, number)

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

Parâmetros

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Herdado de Recognizer.action

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

Parâmetros

listener

ANTLRErrorListener<Token>

Herdado de Recognizer.addErrorListener

addParseListener(ParseTreeListener)

listener Registra-se para receber eventos durante o processo de análise. Para dar suporte a transformações gramaticais de preservação de saída (incluindo, mas não se limitando à remoção de recursão à esquerda, fatoração esquerda automatizada e geração de código otimizada), as chamadas aos métodos de ouvinte durante a análise podem diferir substancialmente das chamadas feitas pelo <xref:ParseTreeWalker%23DEFAULT> usado após a conclusão da análise. Em particular, os eventos de entrada e saída da regra podem ocorrer em uma ordem diferente durante a análise do que após o analisador. Além disso, chamadas para determinados métodos de entrada de regra podem ser omitidas.

Com as exceções específicas a seguir, as chamadas para eventos de ouvinte são determinísticas, ou seja, para entrada idêntica, as chamadas aos métodos de ouvinte serão as mesmas.

  • Alterações na gramática usada para gerar código podem alterar o comportamento das chamadas do ouvinte.
  • Alterações nas opções de linha de comando passadas para ANTLR 4 ao gerar o analisador podem alterar o comportamento das chamadas do ouvinte.
  • Alterar a versão da Ferramenta ANTLR usada para gerar o analisador pode alterar o comportamento das chamadas do ouvinte.
function addParseListener(listener: ParseTreeListener)

Parâmetros

listener

ParseTreeListener

o ouvinte a ser adicionado

Herdado de Parser.addParseListener

compileParseTreePattern(string, number)

O método preferencial de obter um padrão de árvore. Por exemplo, aqui está um exemplo de uso:

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>

Parâmetros

pattern

string

patternRuleIndex

number

Retornos

Promise<ParseTreePattern>

Herdado de Parser.compileParseTreePattern

compileParseTreePattern(string, number, Lexer)

O mesmo que [int)](xref:%23compileParseTreePattern(String%2C), mas especifique um CommonRegexLexer em vez de tentar deduzê-lo desse analisador.

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

Parâmetros

pattern

string

patternRuleIndex

number

lexer

Lexer

Retornos

Promise<ParseTreePattern>

Herdado de Parser.compileParseTreePattern

consume()

Consumir e retornar o símbolo atual. Por exemplo, dada a entrada a seguir por A ser o símbolo lookahead atual, essa função move o cursor para B e retorna A.

A B
^

Se o analisador não estiver no modo de recuperação de erro, o símbolo consumido será adicionado à árvore de análise usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> será chamado em qualquer ouvinte de análise. Se o analisador estiver no modo de recuperação de erro, o símbolo consumido será adicionado à árvore de análise usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) <xref:ParserRuleContext%23addErrorNode(ErrorNode)> e <xref:ParseTreeListener%23visitErrorNode> será chamado em qualquer ouvinte de análise.

function consume(): Token

Retornos

Token

Herdado de Parser.consume

createErrorNode(ParserRuleContext, Token)

Como criar um nó de erro, dado um token, associado a um pai. Normalmente, o nó de erro a ser criado não é uma função do pai.

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

Parâmetros

parent

ParserRuleContext

t

Token

Retornos

ErrorNode

Herdado de Parser.createErrorNode

createTerminalNode(ParserRuleContext, Token)

Como criar um nó folha de token associado a um pai. Normalmente, o nó de terminal a ser criado não é uma função do pai.

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

Parâmetros

parent

ParserRuleContext

t

Token

Retornos

TerminalNode

Herdado de Parser.createTerminalNode

dumpDFA()

Para depuração e outras finalidades.

function dumpDFA()

Herdado de Parser.dumpDFA

enterLeftFactoredRule(ParserRuleContext, number, number)

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

Parâmetros

localctx

ParserRuleContext

state

number

ruleIndex

number

Herdado de Parser.enterLeftFactoredRule

enterOuterAlt(ParserRuleContext, number)

function enterOuterAlt(localctx: ParserRuleContext, altNum: number)

Parâmetros

localctx

ParserRuleContext

altNum

number

Herdado de Parser.enterOuterAlt

enterRecursionRule(ParserRuleContext, number, number, number)

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

Parâmetros

localctx

ParserRuleContext

state

number

ruleIndex

number

precedence

number

Herdado de Parser.enterRecursionRule

enterRule(ParserRuleContext, number, number)

Sempre chamado por analisadores gerados na entrada de uma regra. O campo <xref:%23_ctx> de acesso obtém o contexto atual.

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

Parâmetros

localctx

ParserRuleContext

state

number

ruleIndex

number

Herdado de Parser.enterRule

exitRule()

function exitRule()

Herdado de Parser.exitRule

getATNWithBypassAlts()

A ATN com alternativas de bypass é cara de criar, portanto, a criamos lentamente. @ se o analisador atual não implementar a serializedATN propriedade .

function getATNWithBypassAlts(): ATN

Retornos

ATN

Herdado de Parser.getATNWithBypassAlts

getDFAStrings()

Para depuração e outras finalidades.

function getDFAStrings(): string[]

Retornos

string[]

Herdado de Parser.getDFAStrings

getErrorHeader(RecognitionException)

Qual é o cabeçalho de erro, normalmente informações de posição de linha/caractere?

function getErrorHeader(e: RecognitionException): string

Parâmetros

e

RecognitionException

Retornos

string

Herdado de Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

Retornos

ParserErrorListener

Herdado de Parser.getErrorListenerDispatch

getErrorListeners()

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

Retornos

Array<ANTLRErrorListener<Token>>

Herdado de Recognizer.getErrorListeners

getExpectedTokens()

Calcula o conjunto de símbolos de entrada que podem seguir o estado e o contexto atuais do analisador, conforme fornecido por <xref:%23getState> e <xref:%23getContext>, respectivamente.

Consulte ATN#getExpectedTokens(int, RuleContext)

function getExpectedTokens(): IntervalSet

Retornos

IntervalSet

Herdado de Parser.getExpectedTokens

getExpectedTokensWithinCurrentRule()

function getExpectedTokensWithinCurrentRule(): IntervalSet

Retornos

IntervalSet

Herdado de Parser.getExpectedTokensWithinCurrentRule

getInvokingContext(number)

function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined

Parâmetros

ruleIndex

number

Retornos

ParserRuleContext | undefined

Herdado de Parser.getInvokingContext

getParseListeners()

function getParseListeners(): ParseTreeListener[]

Retornos

ParseTreeListener[]

Herdado de Parser.getParseListeners

getRuleIndex(string)

Obtenha o índice de uma regra (ou seja, campo RULE_ruleName ) ou -1 se não for encontrado.

function getRuleIndex(ruleName: string): number

Parâmetros

ruleName

string

Retornos

number

Herdado de Parser.getRuleIndex

getRuleIndexMap()

Obtenha um mapa de nomes de regras para índices de regra. Usado para compilação de XPath e padrão de árvore.

function getRuleIndexMap(): ReadonlyMap<string, number>

Retornos

ReadonlyMap<string, number>

Herdado de Recognizer.getRuleIndexMap

getRuleInvocationStack(RuleContext)

Retornar Cadeia de Caracteres> de Lista<dos nomes de regra na instância do analisador que leva a uma chamada para a regra atual. Você pode substituir se quiser mais detalhes, como as informações de arquivo/linha de onde no ATN uma regra é invocada. Isso é muito útil para mensagens de erro.

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

Parâmetros

ctx

RuleContext

Retornos

string[]

Herdado de Parser.getRuleInvocationStack

getTokenType(string)

function getTokenType(tokenName: string): number

Parâmetros

tokenName

string

Retornos

number

Herdado de Recognizer.getTokenType

getTokenTypeMap()

Obtenha um mapa de nomes de token para tipos de token. Usado para compilação de XPath e padrão de árvore.

function getTokenTypeMap(): ReadonlyMap<string, number>

Retornos

ReadonlyMap<string, number>

Herdado de Recognizer.getTokenTypeMap

inContext(string)

function inContext(context: string): boolean

Parâmetros

context

string

Retornos

boolean

Herdado de Parser.inContext

isExpectedToken(number)

Verifica se é possível ou não symbol seguir o estado atual no ATN. O comportamento desse método é equivalente ao seguinte, mas é implementado de modo que o conjunto de itens a seguir contextual completo não precise ser construído explicitamente.

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

Parâmetros

symbol

number

o tipo de símbolo a ser verificado

Retornos

boolean

true se symbol puder seguir o estado atual no ATN, caso contrário false, .

Herdado de Parser.isExpectedToken

match(number)

Corresponda ao símbolo de entrada atual com ttype. Se o tipo de símbolo corresponder <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> for chamado para concluir o processo de correspondência. Se o tipo de símbolo não corresponder, <xref:ANTLRErrorStrategy%23recoverInline> será chamado na estratégia de erro atual para tentar a recuperação. Se <xref:%23getBuildParseTree> for true e o índice de token do símbolo retornado por <xref:ANTLRErrorStrategy%23recoverInline> for -1, o símbolo será adicionado à árvore de análise chamando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) e .<xref:ParserRuleContext%23addErrorNode(ErrorNode)>

function match(ttype: number): Token

Parâmetros

ttype

number

o tipo de token a ser correspondido

Retornos

Token

o símbolo correspondente @ se o símbolo de entrada atual não correspondeu ttype e a estratégia de erro não pôde se recuperar do símbolo incompatível

Herdado de Parser.match

matchWildcard()

Corresponder ao símbolo de entrada atual como um curinga. Se o tipo de símbolo corresponder (ou seja, tiver um valor maior que 0) <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> for chamado para concluir o processo de correspondência. Se o tipo de símbolo não corresponder, <xref:ANTLRErrorStrategy%23recoverInline> será chamado na estratégia de erro atual para tentar a recuperação. Se <xref:%23getBuildParseTree> for true e o índice de token do símbolo retornado por <xref:ANTLRErrorStrategy%23recoverInline> for -1, o símbolo será adicionado à árvore de análise chamando [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) e .<xref:ParserRuleContext%23addErrorNode(ErrorNode)>

function matchWildcard(): Token

Retornos

Token

o símbolo correspondente @ se o símbolo de entrada atual não correspondeu a um curinga e a estratégia de erro não pôde se recuperar do símbolo incompatível

Herdado de Parser.matchWildcard

notifyErrorListeners(string)

function notifyErrorListeners(msg: string)

Parâmetros

msg

string

Herdado de Parser.notifyErrorListeners

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

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

Parâmetros

msg

string

offendingToken

Token | null

e

RecognitionException | undefined

Herdado de Parser.notifyErrorListeners

precpred(RuleContext, number)

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

Parâmetros

localctx

RuleContext

precedence

number

Retornos

boolean

Herdado de Parser.precpred

pushNewRecursionContext(ParserRuleContext, number, number)

Como <xref:%23enterRule> , mas para regras recursivas. Torne o contexto atual o filho do localctx de entrada.

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

Parâmetros

localctx

ParserRuleContext

state

number

ruleIndex

number

Herdado de Parser.pushNewRecursionContext

removeErrorListener(ANTLRErrorListener<Token>)

function removeErrorListener(listener: ANTLRErrorListener<Token>)

Parâmetros

listener

ANTLRErrorListener<Token>

Herdado de Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

Herdado de Recognizer.removeErrorListeners

removeParseListener(ParseTreeListener)

Remova listener da lista de ouvintes de análise. Se listener for undefined ou não tiver sido adicionado como um ouvinte de análise, esse método não fará nada.

Consulte #addParseListener

function removeParseListener(listener: ParseTreeListener)

Parâmetros

listener

ParseTreeListener

o ouvinte a ser removido

Herdado de Parser.removeParseListener

removeParseListeners()

Remova todos os ouvintes de análise.

Consulte #addParseListener

function removeParseListeners()

Herdado de Parser.removeParseListeners

reset()

redefinir o estado do analisador

function reset()

Herdado de Parser.reset

reset(boolean)

function reset(resetInput: boolean)

Parâmetros

resetInput

boolean

Herdado de Parser.reset

sempred(RuleContext | undefined, number, number)

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

Parâmetros

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Retornos

boolean

Herdado de Recognizer.sempred

setProfile(boolean)

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

Parâmetros

profile

boolean

Retornos

Promise<void>

Herdado de Parser.setProfile

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

Parâmetros

_parentctx

ParserRuleContext

Herdado de Parser.unrollRecursionContexts