Bagikan melalui


CommonRegexParser class

Memperluas

Parser

Konstruktor

CommonRegexParser(TokenStream)

Properti

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

Properti yang Diwariskan

atn

Dapatkan serializedATN yang digunakan oleh pengenal untuk prediksi.

buildParseTree

Lacak objek <xref:ParserRuleContext> selama penguraian dan kaitkan menggunakan daftar <xref:ParserRuleContext%23children> sehingga membentuk pohon urai. <xref:ParserRuleContext> yang dikembalikan dari aturan awal mewakili akar pohon penguraian. Perhatikan bahwa jika kita tidak membangun pohon penguraian, konteks aturan hanya menunjuk ke atas. Ketika aturan keluar, aturan mengembalikan konteks tetapi akan sampah dikumpulkan jika tidak ada yang memegang referensi. Ini menunjuk ke atas tetapi tidak ada yang menunjuk ke atas.

Ketika kita membangun pohon penguraian, kita menambahkan semua konteks ini ke daftar <xref:ParserRuleContext%23children>. Konteks kemudian bukan kandidat pengumpulan sampah.

context
currentToken

Kecocokan perlu mengembalikan simbol input saat ini, yang dimasukkan ke dalam label untuk ref token terkait; misalnya, x=ID.

EOF
errorHandler
inputStream

Atur aliran token dan atur ulang pengurai.

interpreter

Atur penerjemah ATN yang digunakan oleh pengenal untuk prediksi.

isMatchedEOF
isTrace

Selama penguraian terkadang berguna untuk mendengarkan peristiwa entri aturan dan keluar serta kecocokan token. Ini untuk penelusuran kesalahan yang cepat dan kotor.

numberOfSyntaxErrors

Mendapatkan jumlah kesalahan sintaks yang dilaporkan selama penguraian. Nilai ini bertahap setiap kali <xref:%23notifyErrorListeners> dipanggil.

Lihat #notifyErrorListeners

parseInfo
precedence

Dapatkan tingkat prioritas untuk aturan yang paling diutamakan.

ruleContext
sourceName
state

Tunjukkan bahwa recognizer telah mengubah status internal yang konsisten dengan status ATN yang diteruskan. Dengan cara ini kita selalu tahu di mana kita berada di ATN saat parser berjalan bersama. Objek konteks aturan membentuk tumpukan yang memungkinkan kita melihat tumpukan aturan pemanggilan. Gabungkan ini dan kami memiliki informasi konfigurasi ATN lengkap.

tokenFactory

Metode

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

Metode yang Diwarisi

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

Mendaftarkan listener untuk menerima peristiwa selama proses penguraian. Untuk mendukung transformasi tata bahasa yang mempertahankan output (termasuk tetapi tidak terbatas pada penghapusan rekursi kiri, faktor kiri otomatis, dan pembuatan kode yang dioptimalkan), panggilan ke metode pendengar selama penguraian mungkin berbeda secara substansial dari panggilan yang dilakukan oleh <xref:ParseTreeWalker%23DEFAULT> digunakan setelah penguraian selesai. Secara khusus, peristiwa entri aturan dan keluar dapat terjadi dalam urutan yang berbeda selama pengurai daripada setelah pengurai. Selain itu, panggilan ke metode entri aturan tertentu dapat dihilangkan.

Dengan pengecualian spesifik berikut, panggilan ke peristiwa pendengar deterministik, yaitu untuk memasukkan panggilan yang identik ke metode pendengar akan sama.

  • Perubahan tata bahasa yang digunakan untuk menghasilkan kode dapat mengubah perilaku panggilan pendengar.
  • Perubahan pada opsi baris perintah yang diteruskan ke ANTLR 4 saat menghasilkan pengurai dapat mengubah perilaku panggilan pendengar.
  • Mengubah versi Alat ANTLR yang digunakan untuk menghasilkan pengurai dapat mengubah perilaku panggilan pendengar.
compileParseTreePattern(string, number)

Metode yang disukai untuk mendapatkan pola pohon. Misalnya, berikut adalah contoh penggunaan:

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)

Sama seperti [int)](xref:%23compileParseTreePattern(String%2C) tetapi tentukan CommonRegexLexer daripada mencoba menyimpulkannya dari pengurai ini.

consume()

Gunakan dan kembalikan simbol saat ini. Misalnya, mengingat input berikut dengan A menjadi simbol lookahead saat ini, fungsi ini memindahkan kursor ke B dan mengembalikan A.

A B
^

Jika pengurai tidak dalam mode pemulihan kesalahan, simbol yang digunakan ditambahkan ke pohon penguraian menggunakan <xref:ParserRuleContext%23addChild(TerminalNode)>, dan <xref:ParseTreeListener%23visitTerminal> dipanggil pada listener penguraian apa pun. Jika pengurai dalam mode pemulihan kesalahan, simbol yang digunakan ditambahkan ke pohon pengurai menggunakan [Token)](xref:%23createErrorNode(ParserRuleContext%2C) maka <xref:ParserRuleContext%23addErrorNode(ErrorNode)> dan <xref:ParseTreeListener%23visitErrorNode> dipanggil pada listener penguraian apa pun.

createErrorNode(ParserRuleContext, Token)

Cara membuat simpul kesalahan, diberikan token, yang terkait dengan induk. Biasanya, node kesalahan yang akan dibuat bukan fungsi induk.

createTerminalNode(ParserRuleContext, Token)

Cara membuat simpul daun token yang terkait dengan induk. Biasanya, simpul terminal yang akan dibuat bukan fungsi induk.

dumpDFA()

Untuk penelusuran kesalahan dan tujuan lainnya.

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

Selalu dipanggil oleh pengurai yang dihasilkan setelah masuk ke aturan. Bidang Access <xref:%23_ctx> mendapatkan konteks saat ini.

exitRule()
getATNWithBypassAlts()

ATN dengan alternatif bypass mahal untuk dibuat sehingga kami membuatnya dengan malas. @ jika pengurai saat ini tidak mengimplementasikan properti serializedATN.

getDFAStrings()

Untuk penelusuran kesalahan dan tujuan lainnya.

getErrorHeader(RecognitionException)

Apa itu header kesalahan, biasanya informasi posisi baris/karakter?

getErrorListenerDispatch()
getErrorListeners()
getExpectedTokens()

Menghitung kumpulan simbol input yang dapat mengikuti status dan konteks pengurai saat ini, seperti yang diberikan oleh <xref:%23getState> dan <xref:%23getContext>, masing-masing.

Lihat ATN#getExpectedTokens(int, RuleContext)

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

Dapatkan indeks aturan (yaitu, bidang RULE_ruleName) atau -1 jika tidak ditemukan.

getRuleIndexMap()

Dapatkan peta dari nama aturan ke indeks aturan. Digunakan untuk kompilasi pola XPath dan pohon.

getRuleInvocationStack(RuleContext)

Daftar Pengembalian<String> nama aturan di instans pengurai Anda yang mengarah ke panggilan ke aturan saat ini. Anda dapat mengambil alih jika Anda ingin detail lebih lanjut seperti info file/baris tempat di ATN aturan dipanggil. Ini sangat berguna untuk pesan kesalahan.

getTokenType(string)
getTokenTypeMap()

Dapatkan peta dari nama token ke jenis token. Digunakan untuk kompilasi pola XPath dan pohon.

inContext(string)
isExpectedToken(number)

Memeriksa apakah symbol dapat mengikuti status saat ini di ATN atau tidak. Perilaku metode ini setara dengan yang berikut ini, tetapi diimplementasikan sed sehingga kumpulan tindak lanjut peka konteks lengkap tidak perlu dibangun secara eksplisit.

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

Cocokkan simbol input saat ini dengan ttype. Jika jenis simbol cocok, <xref:ANTLRErrorStrategy%23reportMatch> dan <xref:%23consume> dipanggil untuk menyelesaikan proses pencocokan. Jika jenis simbol tidak cocok, <xref:ANTLRErrorStrategy%23recoverInline> dipanggil pada strategi kesalahan saat ini untuk mencoba pemulihan. Jika <xref:%23getBuildParseTree>true dan indeks token simbol yang dikembalikan oleh <xref:ANTLRErrorStrategy%23recoverInline> adalah -1, simbol ditambahkan ke pohon penguraian dengan memanggil [Token)](xref:%23createErrorNode(ParserRuleContext%2C) lalu <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

matchWildcard()

Cocokkan simbol input saat ini sebagai kartubebas. Jika jenis simbol cocok (yaitu memiliki nilai yang lebih besar dari 0), <xref:ANTLRErrorStrategy%23reportMatch> dan <xref:%23consume> dipanggil untuk menyelesaikan proses pencocokan. Jika jenis simbol tidak cocok, <xref:ANTLRErrorStrategy%23recoverInline> dipanggil pada strategi kesalahan saat ini untuk mencoba pemulihan. Jika <xref:%23getBuildParseTree>true dan indeks token simbol yang dikembalikan oleh <xref:ANTLRErrorStrategy%23recoverInline> adalah -1, simbol ditambahkan ke pohon urai dengan memanggil [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) lalu <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

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

Seperti <xref:%23enterRule> tetapi untuk aturan rekursif. Jadikan konteks saat ini sebagai turunan dari localctx yang masuk.

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

Hapus listener dari daftar listener penguraian. Jika listenerundefined atau belum ditambahkan sebagai pendengar penguraian, metode ini tidak melakukan apa pun.

Lihat #addParseListener

removeParseListeners()

Hapus semua listener pengurai.

Lihat #addParseListener

reset()

mengatur ulang status pengurai

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

Detail Konstruktor

CommonRegexParser(TokenStream)

new CommonRegexParser(input: TokenStream)

Parameter

input

TokenStream

Detail Properti

ALC

public static ALC: 44 = 44

Nilai Properti

44

Ampersand

public static Ampersand: 43 = 43

Nilai Properti

43

AUC

public static AUC: 70 = 70

Nilai Properti

70

Backslash

public static Backslash: 10 = 10

Nilai Properti

10

BellChar

public static BellChar: 3 = 3

Nilai Properti

3

BLC

public static BLC: 45 = 45

Nilai Properti

45

BlockQuoted

public static BlockQuoted: 2 = 2

Nilai Properti

2

BUC

public static BUC: 71 = 71

Nilai Properti

71

Caret

public static Caret: 23 = 23

Nilai Properti

23

CarriageReturn

public static CarriageReturn: 8 = 8

Nilai Properti

8

CharacterClassEnd

public static CharacterClassEnd: 22 = 22

Nilai Properti

22

CharacterClassStart

public static CharacterClassStart: 21 = 21

Nilai Properti

21

CharWithoutProperty

public static CharWithoutProperty: 16 = 16

Nilai Properti

16

CharWithProperty

public static CharWithProperty: 15 = 15

Nilai Properti

15

CLC

public static CLC: 46 = 46

Nilai Properti

46

CloseBrace

public static CloseBrace: 29 = 29

Nilai Properti

29

CloseParen

public static CloseParen: 34 = 34

Nilai Properti

34

Colon

public static Colon: 39 = 39

Nilai Properti

39

Comma

public static Comma: 30 = 30

Nilai Properti

30

ControlChar

public static ControlChar: 4 = 4

Nilai Properti

4

CUC

public static CUC: 72 = 72

Nilai Properti

72

D0

public static D0: 105 = 105

Nilai Properti

105

D1

public static D1: 96 = 96

Nilai Properti

96

D2

public static D2: 97 = 97

Nilai Properti

97

D3

public static D3: 98 = 98

Nilai Properti

98

D4

public static D4: 99 = 99

Nilai Properti

99

D5

public static D5: 100 = 100

Nilai Properti

100

D6

public static D6: 101 = 101

Nilai Properti

101

D7

public static D7: 102 = 102

Nilai Properti

102

D8

public static D8: 103 = 103

Nilai Properti

103

D9

public static D9: 104 = 104

Nilai Properti

104

DecimalDigit

public static DecimalDigit: 13 = 13

Nilai Properti

13

DLC

public static DLC: 47 = 47

Nilai Properti

47

Dot

public static Dot: 12 = 12

Nilai Properti

12

DUC

public static DUC: 73 = 73

Nilai Properti

73

ELC

public static ELC: 48 = 48

Nilai Properti

48

EndOfSubject

public static EndOfSubject: 31 = 31

Nilai Properti

31

Equals

public static Equals: 41 = 41

Nilai Properti

41

EscapeChar

public static EscapeChar: 5 = 5

Nilai Properti

5

EUC

public static EUC: 74 = 74

Nilai Properti

74

Exclamation

public static Exclamation: 42 = 42

Nilai Properti

42

FLC

public static FLC: 49 = 49

Nilai Properti

49

FormFeed

public static FormFeed: 6 = 6

Nilai Properti

6

FUC

public static FUC: 75 = 75

Nilai Properti

75

GLC

public static GLC: 50 = 50

Nilai Properti

50

grammarFileName

string grammarFileName

Nilai Properti

string

GreaterThan

public static GreaterThan: 36 = 36

Nilai Properti

36

GUC

public static GUC: 76 = 76

Nilai Properti

76

Hash

public static Hash: 40 = 40

Nilai Properti

40

HexChar

public static HexChar: 11 = 11

Nilai Properti

11

HLC

public static HLC: 51 = 51

Nilai Properti

51

HUC

public static HUC: 77 = 77

Nilai Properti

77

Hyphen

public static Hyphen: 24 = 24

Nilai Properti

24

ILC

public static ILC: 52 = 52

Nilai Properti

52

IUC

public static IUC: 78 = 78

Nilai Properti

78

JLC

public static JLC: 53 = 53

Nilai Properti

53

JUC

public static JUC: 79 = 79

Nilai Properti

79

KLC

public static KLC: 54 = 54

Nilai Properti

54

KUC

public static KUC: 80 = 80

Nilai Properti

80

LessThan

public static LessThan: 35 = 35

Nilai Properti

35

LLC

public static LLC: 55 = 55

Nilai Properti

55

LUC

public static LUC: 81 = 81

Nilai Properti

81

MLC

public static MLC: 56 = 56

Nilai Properti

56

MUC

public static MUC: 82 = 82

Nilai Properti

82

NewLine

public static NewLine: 7 = 7

Nilai Properti

7

NLC

public static NLC: 57 = 57

Nilai Properti

57

NotDecimalDigit

public static NotDecimalDigit: 14 = 14

Nilai Properti

14

NotWhiteSpace

public static NotWhiteSpace: 18 = 18

Nilai Properti

18

NotWordChar

public static NotWordChar: 20 = 20

Nilai Properti

20

NUC

public static NUC: 83 = 83

Nilai Properti

83

OLC

public static OLC: 58 = 58

Nilai Properti

58

OpenBrace

public static OpenBrace: 28 = 28

Nilai Properti

28

OpenParen

public static OpenParen: 33 = 33

Nilai Properti

33

OtherChar

public static OtherChar: 106 = 106

Nilai Properti

106

OUC

public static OUC: 84 = 84

Nilai Properti

84

Pipe

public static Pipe: 32 = 32

Nilai Properti

32

PLC

public static PLC: 59 = 59

Nilai Properti

59

Plus

public static Plus: 26 = 26

Nilai Properti

26

PUC

public static PUC: 85 = 85

Nilai Properti

85

QLC

public static QLC: 60 = 60

Nilai Properti

60

QUC

public static QUC: 86 = 86

Nilai Properti

86

QuestionMark

public static QuestionMark: 25 = 25

Nilai Properti

25

Quoted

public static Quoted: 1 = 1

Nilai Properti

1

RLC

public static RLC: 61 = 61

Nilai Properti

61

RUC

public static RUC: 87 = 87

Nilai Properti

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

Nilai Properti

string[]

ruleNames

string[] ruleNames

Nilai Properti

string[]

RULE_alpha_nums

public static RULE_alpha_nums: 23 = 23

Nilai Properti

23

RULE_alternation

public static RULE_alternation: 1 = 1

Nilai Properti

1

RULE_atom

public static RULE_atom: 11 = 11

Nilai Properti

11

RULE_capture

public static RULE_capture: 7 = 7

Nilai Properti

7

RULE_cc_atom

public static RULE_cc_atom: 12 = 12

Nilai Properti

12

RULE_cc_literal

public static RULE_cc_literal: 15 = 15

Nilai Properti

15

RULE_character_class

public static RULE_character_class: 6 = 6

Nilai Properti

6

RULE_digit

public static RULE_digit: 21 = 21

Nilai Properti

21

RULE_digits

public static RULE_digits: 20 = 20

Nilai Properti

20

RULE_element

public static RULE_element: 3 = 3

Nilai Properti

3

RULE_expr

public static RULE_expr: 2 = 2

Nilai Properti

2

RULE_letter

public static RULE_letter: 26 = 26

Nilai Properti

26

RULE_literal

public static RULE_literal: 14 = 14

Nilai Properti

14

RULE_name

public static RULE_name: 22 = 22

Nilai Properti

22

RULE_non_capture

public static RULE_non_capture: 8 = 8

Nilai Properti

8

RULE_non_close_paren

public static RULE_non_close_paren: 25 = 25

Nilai Properti

25

RULE_non_close_parens

public static RULE_non_close_parens: 24 = 24

Nilai Properti

24

RULE_number

public static RULE_number: 17 = 17

Nilai Properti

17

RULE_octal_char

public static RULE_octal_char: 18 = 18

Nilai Properti

18

RULE_octal_digit

public static RULE_octal_digit: 19 = 19

Nilai Properti

19

RULE_option

public static RULE_option: 9 = 9

Nilai Properti

9

RULE_option_flag

public static RULE_option_flag: 10 = 10

Nilai Properti

10

RULE_parse

public static RULE_parse: 0 = 0

Nilai Properti

0

RULE_quantifier

public static RULE_quantifier: 4 = 4

Nilai Properti

4

RULE_quantifier_type

public static RULE_quantifier_type: 5 = 5

Nilai Properti

5

RULE_shared_atom

public static RULE_shared_atom: 13 = 13

Nilai Properti

13

RULE_shared_literal

public static RULE_shared_literal: 16 = 16

Nilai Properti

16

serializedATN

string serializedATN

Nilai Properti

string

SingleQuote

public static SingleQuote: 37 = 37

Nilai Properti

37

SLC

public static SLC: 62 = 62

Nilai Properti

62

Star

public static Star: 27 = 27

Nilai Properti

27

SUC

public static SUC: 88 = 88

Nilai Properti

88

Tab

public static Tab: 9 = 9

Nilai Properti

9

TLC

public static TLC: 63 = 63

Nilai Properti

63

TUC

public static TUC: 89 = 89

Nilai Properti

89

ULC

public static ULC: 64 = 64

Nilai Properti

64

Underscore

public static Underscore: 38 = 38

Nilai Properti

38

UUC

public static UUC: 90 = 90

Nilai Properti

90

VLC

public static VLC: 65 = 65

Nilai Properti

65

VOCABULARY

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

Nilai Properti

Vocabulary

vocabulary

Vocabulary vocabulary

Nilai Properti

Vocabulary

VUC

public static VUC: 91 = 91

Nilai Properti

91

WhiteSpace

public static WhiteSpace: 17 = 17

Nilai Properti

17

WLC

public static WLC: 66 = 66

Nilai Properti

66

WordChar

public static WordChar: 19 = 19

Nilai Properti

19

WUC

public static WUC: 92 = 92

Nilai Properti

92

XLC

public static XLC: 67 = 67

Nilai Properti

67

XUC

public static XUC: 93 = 93

Nilai Properti

93

YLC

public static YLC: 68 = 68

Nilai Properti

68

YUC

public static YUC: 94 = 94

Nilai Properti

94

ZLC

public static ZLC: 69 = 69

Nilai Properti

69

ZUC

public static ZUC: 95 = 95

Nilai Properti

95

Detail Properti yang Diwariskan

atn

Dapatkan serializedATN yang digunakan oleh pengenal untuk prediksi.

atn: ATN

Nilai Properti

ATN

Diwariskan Dari Recognizer.atn

buildParseTree

Lacak objek <xref:ParserRuleContext> selama penguraian dan kaitkan menggunakan daftar <xref:ParserRuleContext%23children> sehingga membentuk pohon urai. <xref:ParserRuleContext> yang dikembalikan dari aturan awal mewakili akar pohon penguraian. Perhatikan bahwa jika kita tidak membangun pohon penguraian, konteks aturan hanya menunjuk ke atas. Ketika aturan keluar, aturan mengembalikan konteks tetapi akan sampah dikumpulkan jika tidak ada yang memegang referensi. Ini menunjuk ke atas tetapi tidak ada yang menunjuk ke atas.

Ketika kita membangun pohon penguraian, kita menambahkan semua konteks ini ke daftar <xref:ParserRuleContext%23children>. Konteks kemudian bukan kandidat pengumpulan sampah.

buildParseTree: boolean

Nilai Properti

boolean

Diwarisi Dari Parser.buildParseTree

context

context: ParserRuleContext

Nilai Properti

ParserRuleContext

Diwariskan Dari Parser.context

currentToken

Kecocokan perlu mengembalikan simbol input saat ini, yang dimasukkan ke dalam label untuk ref token terkait; misalnya, x=ID.

currentToken: Token

Nilai Properti

Token

Diwariskan Dari Parser.currentToken

EOF

static EOF: number

Nilai Properti

number

Diwariskan Dari Recognizer.EOF

errorHandler

errorHandler: ANTLRErrorStrategy

Nilai Properti

ANTLRErrorStrategy

Diwariskan Dari Parser.errorHandler

inputStream

Atur aliran token dan atur ulang pengurai.

inputStream: TokenStream

Nilai Properti

TokenStream

Diwariskan Dari Parser.inputStream

interpreter

Atur penerjemah ATN yang digunakan oleh pengenal untuk prediksi.

interpreter: ParserATNSimulator

Nilai Properti

ParserATNSimulator

Diwariskan Dari Recognizer.interpreter

isMatchedEOF

isMatchedEOF: boolean

Nilai Properti

boolean

Diwariskan Dari Parser.isMatchedEOF

isTrace

Selama penguraian terkadang berguna untuk mendengarkan peristiwa entri aturan dan keluar serta kecocokan token. Ini untuk penelusuran kesalahan yang cepat dan kotor.

isTrace: boolean

Nilai Properti

boolean

Diwariskan Dari Parser.isTrace

numberOfSyntaxErrors

Mendapatkan jumlah kesalahan sintaks yang dilaporkan selama penguraian. Nilai ini bertahap setiap kali <xref:%23notifyErrorListeners> dipanggil.

Lihat #notifyErrorListeners

numberOfSyntaxErrors: number

Nilai Properti

number

Diwariskan Dari Parser.numberOfSyntaxErrors

parseInfo

parseInfo: Promise<ParseInfo | undefined>

Nilai Properti

Promise<ParseInfo | undefined>

Diwariskan Dari Parser.parseInfo

precedence

Dapatkan tingkat prioritas untuk aturan yang paling diutamakan.

precedence: number

Nilai Properti

number

Diwariskan Dari Parser.precedence

ruleContext

ruleContext: ParserRuleContext

Nilai Properti

ParserRuleContext

Diwariskan Dari Parser.ruleContext

sourceName

sourceName: string

Nilai Properti

string

Diwariskan Dari Parser.sourceName

state

Tunjukkan bahwa recognizer telah mengubah status internal yang konsisten dengan status ATN yang diteruskan. Dengan cara ini kita selalu tahu di mana kita berada di ATN saat parser berjalan bersama. Objek konteks aturan membentuk tumpukan yang memungkinkan kita melihat tumpukan aturan pemanggilan. Gabungkan ini dan kami memiliki informasi konfigurasi ATN lengkap.

state: number

Nilai Properti

number

Diwariskan Dari Recognizer.state

tokenFactory

tokenFactory: TokenFactory

Nilai Properti

TokenFactory

Diwariskan Dari Parser.tokenFactory

Detail Metode

alpha_nums()

function alpha_nums(): Alpha_numsContext

Mengembalikan

alternation()

function alternation(): AlternationContext

Mengembalikan

atom()

function atom(): AtomContext

Mengembalikan

capture()

function capture(): CaptureContext

Mengembalikan

cc_atom()

function cc_atom(): Cc_atomContext

Mengembalikan

cc_literal()

function cc_literal(): Cc_literalContext

Mengembalikan

character_class()

function character_class(): Character_classContext

Mengembalikan

digit()

function digit(): DigitContext

Mengembalikan

digits()

function digits(): DigitsContext

Mengembalikan

element()

function element(): ElementContext

Mengembalikan

expr()

function expr(): ExprContext

Mengembalikan

letter()

function letter(): LetterContext

Mengembalikan

literal()

function literal(): LiteralContext

Mengembalikan

name()

function name(): NameContext

Mengembalikan

non_capture()

function non_capture(): Non_captureContext

Mengembalikan

non_close_paren()

function non_close_paren(): Non_close_parenContext

Mengembalikan

non_close_parens()

function non_close_parens(): Non_close_parensContext

Mengembalikan

number()

function number(): NumberContext

Mengembalikan

octal_char()

function octal_char(): Octal_charContext

Mengembalikan

octal_digit()

function octal_digit(): Octal_digitContext

Mengembalikan

option()

function option(): OptionContext

Mengembalikan

option_flag()

function option_flag(): Option_flagContext

Mengembalikan

parse()

function parse(): ParseContext

Mengembalikan

quantifier()

function quantifier(): QuantifierContext

Mengembalikan

quantifier_type()

function quantifier_type(): Quantifier_typeContext

Mengembalikan

shared_atom()

function shared_atom(): Shared_atomContext

Mengembalikan

shared_literal()

function shared_literal(): Shared_literalContext

Mengembalikan

Detail Metode yang Diwarisi

action(RuleContext | undefined, number, number)

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

Parameter

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Diwariskan Dari Recognizer.action

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

Parameter

listener

ANTLRErrorListener<Token>

Diwariskan Dari Recognizer.addErrorListener

addParseListener(ParseTreeListener)

Mendaftarkan listener untuk menerima peristiwa selama proses penguraian. Untuk mendukung transformasi tata bahasa yang mempertahankan output (termasuk tetapi tidak terbatas pada penghapusan rekursi kiri, faktor kiri otomatis, dan pembuatan kode yang dioptimalkan), panggilan ke metode pendengar selama penguraian mungkin berbeda secara substansial dari panggilan yang dilakukan oleh <xref:ParseTreeWalker%23DEFAULT> digunakan setelah penguraian selesai. Secara khusus, peristiwa entri aturan dan keluar dapat terjadi dalam urutan yang berbeda selama pengurai daripada setelah pengurai. Selain itu, panggilan ke metode entri aturan tertentu dapat dihilangkan.

Dengan pengecualian spesifik berikut, panggilan ke peristiwa pendengar deterministik, yaitu untuk memasukkan panggilan yang identik ke metode pendengar akan sama.

  • Perubahan tata bahasa yang digunakan untuk menghasilkan kode dapat mengubah perilaku panggilan pendengar.
  • Perubahan pada opsi baris perintah yang diteruskan ke ANTLR 4 saat menghasilkan pengurai dapat mengubah perilaku panggilan pendengar.
  • Mengubah versi Alat ANTLR yang digunakan untuk menghasilkan pengurai dapat mengubah perilaku panggilan pendengar.
function addParseListener(listener: ParseTreeListener)

Parameter

listener

ParseTreeListener

pendengar yang akan ditambahkan

Diwariskan Dari Parser.addParseListener

compileParseTreePattern(string, number)

Metode yang disukai untuk mendapatkan pola pohon. Misalnya, berikut adalah contoh penggunaan:

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>

Parameter

pattern

string

patternRuleIndex

number

Mengembalikan

Promise<ParseTreePattern>

Diwariskan Dari Parser.compileParseTreePattern

compileParseTreePattern(string, number, Lexer)

Sama seperti [int)](xref:%23compileParseTreePattern(String%2C) tetapi tentukan CommonRegexLexer daripada mencoba menyimpulkannya dari pengurai ini.

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

Parameter

pattern

string

patternRuleIndex

number

lexer

Lexer

Mengembalikan

Promise<ParseTreePattern>

Diwariskan Dari Parser.compileParseTreePattern

consume()

Gunakan dan kembalikan simbol saat ini. Misalnya, mengingat input berikut dengan A menjadi simbol lookahead saat ini, fungsi ini memindahkan kursor ke B dan mengembalikan A.

A B
^

Jika pengurai tidak dalam mode pemulihan kesalahan, simbol yang digunakan ditambahkan ke pohon penguraian menggunakan <xref:ParserRuleContext%23addChild(TerminalNode)>, dan <xref:ParseTreeListener%23visitTerminal> dipanggil pada listener penguraian apa pun. Jika pengurai dalam mode pemulihan kesalahan, simbol yang digunakan ditambahkan ke pohon pengurai menggunakan [Token)](xref:%23createErrorNode(ParserRuleContext%2C) maka <xref:ParserRuleContext%23addErrorNode(ErrorNode)> dan <xref:ParseTreeListener%23visitErrorNode> dipanggil pada listener penguraian apa pun.

function consume(): Token

Mengembalikan

Token

Diwariskan Dari Parser.consume

createErrorNode(ParserRuleContext, Token)

Cara membuat simpul kesalahan, diberikan token, yang terkait dengan induk. Biasanya, node kesalahan yang akan dibuat bukan fungsi induk.

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

Parameter

parent

ParserRuleContext

t

Token

Mengembalikan

ErrorNode

Diwariskan Dari Parser.createErrorNode

createTerminalNode(ParserRuleContext, Token)

Cara membuat simpul daun token yang terkait dengan induk. Biasanya, simpul terminal yang akan dibuat bukan fungsi induk.

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

Parameter

parent

ParserRuleContext

t

Token

Mengembalikan

TerminalNode

Diwariskan Dari Parser.createTerminalNode

dumpDFA()

Untuk penelusuran kesalahan dan tujuan lainnya.

function dumpDFA()

Diwariskan Dari Parser.dumpDFA

enterLeftFactoredRule(ParserRuleContext, number, number)

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

Parameter

localctx

ParserRuleContext

state

number

ruleIndex

number

Diwariskan Dari Parser.enterLeftFactoredRule

enterOuterAlt(ParserRuleContext, number)

function enterOuterAlt(localctx: ParserRuleContext, altNum: number)

Parameter

localctx

ParserRuleContext

altNum

number

Diwariskan Dari Parser.enterOuterAlt

enterRecursionRule(ParserRuleContext, number, number, number)

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

Parameter

localctx

ParserRuleContext

state

number

ruleIndex

number

precedence

number

Diwarisi Dari Parser.enterRecursionRule

enterRule(ParserRuleContext, number, number)

Selalu dipanggil oleh pengurai yang dihasilkan setelah masuk ke aturan. Bidang Access <xref:%23_ctx> mendapatkan konteks saat ini.

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

Parameter

localctx

ParserRuleContext

state

number

ruleIndex

number

Diwariskan Dari Parser.enterRule

exitRule()

function exitRule()

Diwariskan Dari Parser.exitRule

getATNWithBypassAlts()

ATN dengan alternatif bypass mahal untuk dibuat sehingga kami membuatnya dengan malas. @ jika pengurai saat ini tidak mengimplementasikan properti serializedATN.

function getATNWithBypassAlts(): ATN

Mengembalikan

ATN

Diwariskan Dari Parser.getATNWithBypassAlts

getDFAStrings()

Untuk penelusuran kesalahan dan tujuan lainnya.

function getDFAStrings(): string[]

Mengembalikan

string[]

Diwariskan Dari Parser.getDFAStrings

getErrorHeader(RecognitionException)

Apa itu header kesalahan, biasanya informasi posisi baris/karakter?

function getErrorHeader(e: RecognitionException): string

Parameter

e

RecognitionException

Mengembalikan

string

Diwariskan Dari Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

Mengembalikan

ParserErrorListener

Diwarisi Dari Parser.getErrorListenerDispatch

getErrorListeners()

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

Mengembalikan

Array<ANTLRErrorListener<Token>>

Diwariskan Dari Recognizer.getErrorListeners

getExpectedTokens()

Menghitung kumpulan simbol input yang dapat mengikuti status dan konteks pengurai saat ini, seperti yang diberikan oleh <xref:%23getState> dan <xref:%23getContext>, masing-masing.

Lihat ATN#getExpectedTokens(int, RuleContext)

function getExpectedTokens(): IntervalSet

Mengembalikan

IntervalSet

Diwariskan Dari Parser.getExpectedTokens

getExpectedTokensWithinCurrentRule()

function getExpectedTokensWithinCurrentRule(): IntervalSet

Mengembalikan

IntervalSet

Diwarisi Dari Parser.getExpectedTokensWithinCurrentRule

getInvokingContext(number)

function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined

Parameter

ruleIndex

number

Mengembalikan

ParserRuleContext | undefined

Diwarisi Dari Parser.getInvokingContext

getParseListeners()

function getParseListeners(): ParseTreeListener[]

Mengembalikan

ParseTreeListener[]

Diwariskan Dari Parser.getParseListeners

getRuleIndex(string)

Dapatkan indeks aturan (yaitu, bidang RULE_ruleName) atau -1 jika tidak ditemukan.

function getRuleIndex(ruleName: string): number

Parameter

ruleName

string

Mengembalikan

number

Diwariskan Dari Parser.getRuleIndex

getRuleIndexMap()

Dapatkan peta dari nama aturan ke indeks aturan. Digunakan untuk kompilasi pola XPath dan pohon.

function getRuleIndexMap(): ReadonlyMap<string, number>

Mengembalikan

ReadonlyMap<string, number>

Diwarisi Dari Recognizer.getRuleIndexMap

getRuleInvocationStack(RuleContext)

Daftar Pengembalian<String> nama aturan di instans pengurai Anda yang mengarah ke panggilan ke aturan saat ini. Anda dapat mengambil alih jika Anda ingin detail lebih lanjut seperti info file/baris tempat di ATN aturan dipanggil. Ini sangat berguna untuk pesan kesalahan.

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

Parameter

ctx

RuleContext

Mengembalikan

string[]

Diwariskan Dari Parser.getRuleInvocationStack

getTokenType(string)

function getTokenType(tokenName: string): number

Parameter

tokenName

string

Mengembalikan

number

Diwariskan Dari Recognizer.getTokenType

getTokenTypeMap()

Dapatkan peta dari nama token ke jenis token. Digunakan untuk kompilasi pola XPath dan pohon.

function getTokenTypeMap(): ReadonlyMap<string, number>

Mengembalikan

ReadonlyMap<string, number>

Diwariskan Dari Recognizer.getTokenTypeMap

inContext(string)

function inContext(context: string): boolean

Parameter

context

string

Mengembalikan

boolean

Diwariskan Dari Parser.inContext

isExpectedToken(number)

Memeriksa apakah symbol dapat mengikuti status saat ini di ATN atau tidak. Perilaku metode ini setara dengan yang berikut ini, tetapi diimplementasikan sed sehingga kumpulan tindak lanjut peka konteks lengkap tidak perlu dibangun secara eksplisit.

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

Parameter

symbol

number

jenis simbol untuk diperiksa

Mengembalikan

boolean

true jika symbol dapat mengikuti status saat ini di ATN, jika tidak, false.

Diwariskan Dari Parser.isExpectedToken

match(number)

Cocokkan simbol input saat ini dengan ttype. Jika jenis simbol cocok, <xref:ANTLRErrorStrategy%23reportMatch> dan <xref:%23consume> dipanggil untuk menyelesaikan proses pencocokan. Jika jenis simbol tidak cocok, <xref:ANTLRErrorStrategy%23recoverInline> dipanggil pada strategi kesalahan saat ini untuk mencoba pemulihan. Jika <xref:%23getBuildParseTree>true dan indeks token simbol yang dikembalikan oleh <xref:ANTLRErrorStrategy%23recoverInline> adalah -1, simbol ditambahkan ke pohon penguraian dengan memanggil [Token)](xref:%23createErrorNode(ParserRuleContext%2C) lalu <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function match(ttype: number): Token

Parameter

ttype

number

jenis token yang cocok

Mengembalikan

Token

simbol yang cocok @ jika simbol input saat ini tidak cocok dengan ttype dan strategi kesalahan tidak dapat pulih dari simbol yang tidak cocok

Diwariskan Dari Parser.match

matchWildcard()

Cocokkan simbol input saat ini sebagai kartubebas. Jika jenis simbol cocok (yaitu memiliki nilai yang lebih besar dari 0), <xref:ANTLRErrorStrategy%23reportMatch> dan <xref:%23consume> dipanggil untuk menyelesaikan proses pencocokan. Jika jenis simbol tidak cocok, <xref:ANTLRErrorStrategy%23recoverInline> dipanggil pada strategi kesalahan saat ini untuk mencoba pemulihan. Jika <xref:%23getBuildParseTree>true dan indeks token simbol yang dikembalikan oleh <xref:ANTLRErrorStrategy%23recoverInline> adalah -1, simbol ditambahkan ke pohon urai dengan memanggil [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) lalu <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function matchWildcard(): Token

Mengembalikan

Token

simbol yang cocok @ jika simbol input saat ini tidak cocok dengan kartubebas dan strategi kesalahan tidak dapat pulih dari simbol yang tidak cocok

Diwarisi Dari Parser.matchWildcard

notifyErrorListeners(string)

function notifyErrorListeners(msg: string)

Parameter

msg

string

Diwariskan Dari Parser.notifyErrorListeners

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

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

Parameter

msg

string

offendingToken

Token | null

e

RecognitionException | undefined

Diwariskan Dari Parser.notifyErrorListeners

precpred(RuleContext, number)

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

Parameter

localctx

RuleContext

precedence

number

Mengembalikan

boolean

Diwariskan Dari Parser.precpred

pushNewRecursionContext(ParserRuleContext, number, number)

Seperti <xref:%23enterRule> tetapi untuk aturan rekursif. Jadikan konteks saat ini sebagai turunan dari localctx yang masuk.

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

Parameter

localctx

ParserRuleContext

state

number

ruleIndex

number

Diwarisi Dari Parser.pushNewRecursionContext

removeErrorListener(ANTLRErrorListener<Token>)

function removeErrorListener(listener: ANTLRErrorListener<Token>)

Parameter

listener

ANTLRErrorListener<Token>

Diwariskan Dari Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

Diwariskan Dari Recognizer.removeErrorListeners

removeParseListener(ParseTreeListener)

Hapus listener dari daftar listener penguraian. Jika listenerundefined atau belum ditambahkan sebagai pendengar penguraian, metode ini tidak melakukan apa pun.

Lihat #addParseListener

function removeParseListener(listener: ParseTreeListener)

Parameter

listener

ParseTreeListener

pendengar yang akan dihapus

Diwariskan Dari Parser.removeParseListener

removeParseListeners()

Hapus semua listener pengurai.

Lihat #addParseListener

function removeParseListeners()

Diwariskan Dari Parser.removeParseListeners

reset()

mengatur ulang status pengurai

function reset()

Diwariskan Dari Parser.reset

reset(boolean)

function reset(resetInput: boolean)

Parameter

resetInput

boolean

Diwariskan Dari Parser.reset

sempred(RuleContext | undefined, number, number)

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

Parameter

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Mengembalikan

boolean

Diwariskan Dari Recognizer.sempred

setProfile(boolean)

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

Parameter

profile

boolean

Mengembalikan

Promise<void>

Diwariskan Dari Parser.setProfile

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

Parameter

_parentctx

ParserRuleContext

Diwarisi Dari Parser.unrollRecursionContexts