Condividi tramite


ExpressionAntlrLexer class

Extends

Lexer

Costruttori

ExpressionAntlrLexer(CharStream)

Proprietà

ARROW
ASTERISK
channelNames
channelNames
CLOSE_BRACKET
CLOSE_CURLY_BRACKET
CLOSE_SQUARE_BRACKET
COLON
COMMA
DOT
DOUBLE_AND
DOUBLE_EQUAL
DOUBLE_VERTICAL_CYLINDER
ESCAPE_CHARACTER
grammarFileName
IDENTIFIER
ignoreWS
INVALID_TOKEN_DEFAULT_MODE
LESS_OR_EQUAl
LESS_THAN
modeNames
modeNames
MORE_OR_EQUAL
MORE_THAN
NEWLINE
NON
NOT_EQUAL
NULL_COALESCE
NUMBER
OPEN_BRACKET
OPEN_CURLY_BRACKET
OPEN_SQUARE_BRACKET
PERCENT
PLUS
QUESTION_MARK
ruleNames
ruleNames
serializedATN
SINGLE_AND
SLASH
STRING
STRING_INTERPOLATION_MODE
STRING_INTERPOLATION_START
SUBSTRACT
TEMPLATE
TEXT_CONTENT
VOCABULARY
vocabulary
WHITESPACE
XOR

Proprietà ereditate

atn

Ottenere il serializedATN usato dal riconoscitore per la stima.

channel
charIndex

Qual è l'indice del carattere corrente di lookahead?

charPositionInLine
DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
EOF
HIDDEN
inputStream

Impostare il flusso char e reimpostare il lessxer

interpreter

Impostare l'interprete ATN usato dal riconoscitore per la stima.

line
MAX_CHAR_VALUE
MIN_CHAR_VALUE
MORE
parseInfo

Se la profilatura durante l'analisi/lex restituirà i record DecisionInfo per ogni decisione nel riconoscimento in un oggetto ParseInfo.

SKIP
sourceName
state

Indicare che il riconoscitore ha modificato lo stato interno coerente con lo stato ATN passato. In questo modo si sa sempre dove ci si trova nell'ATN mentre il parser va avanti. Gli oggetti contesto regola formano uno stack che consente di visualizzare lo stack di richiamo delle regole. Combinare questa operazione e sono disponibili informazioni di configurazione ATN complete.

text

Impostare il testo completo di questo token; cancella tutte le modifiche precedenti apportate al testo.

token

Eseguire l'override se si emettono più token.

tokenFactory
type

Metodi

action(RuleContext, number, number)
sempred(RuleContext, number, number)

Metodi ereditati

addErrorListener(ANTLRErrorListener<number>)
emit()

Per impostazione predefinita, non supporta più emetti per ogni chiamata nextToken per motivi di efficienza. Sottoclasse ed eseguire l'override di questo metodo, nextToken e getToken (per eseguire il push dei token in un elenco ed eseguire il pull da tale elenco anziché da una singola variabile così come questa implementazione).

emit(Token)

Il metodo standard chiamato per generare automaticamente un token nella regola lessicale più esterna. L'oggetto token deve puntare al buffer char start.. fermarsi. Se è presente un override di testo in 'text', usarlo per impostare il testo del token. Eseguire l'override di questo metodo per generare oggetti Token personalizzati o fornire una nuova factory.

emitEOF()
getAllTokens()

Restituisce un elenco di tutti gli oggetti Token nel flusso char di input. Forza il caricamento di tutti i token. Non include il token EOF.

getCharErrorDisplay(number)
getErrorDisplay(string | number)
getErrorHeader(RecognitionException)

Qual è l'intestazione dell'errore, in genere informazioni sulla posizione di riga/carattere?

getErrorListenerDispatch()
getErrorListeners()
getRuleIndexMap()

Ottenere una mappa dai nomi delle regole agli indici delle regole. Usato per la compilazione di modelli di albero e XPath.

getTokenType(string)
getTokenTypeMap()

Ottenere una mappa dai nomi dei token ai tipi di token. Usato per la compilazione di modelli di albero e XPath.

mode(number)
more()
nextToken()

Restituisce un token da questa origine; ad esempio, trovare una corrispondenza con un token nel flusso char.

notifyListeners(LexerNoViableAltException)
popMode()
precpred(RuleContext | undefined, number)
pushMode(number)
recover(LexerNoViableAltException)
recover(RecognitionException)

I lexers possono in genere corrispondere a qualsiasi carattere nel suo vocabolario dopo aver abbinato un token, quindi fare la cosa semplice e semplicemente uccidere un personaggio e sperare che tutto funzioni. È invece possibile usare lo stack di chiamate delle regole per eseguire un ripristino degli errori sofisticato se si è in una regola di frammento.

removeErrorListener(ANTLRErrorListener<number>)
removeErrorListeners()
reset()
reset(boolean)
skip()

Indicare al lexer di ignorare la creazione di un token per la regola lexer corrente e cercare un altro token. nextToken() sa continuare a cercare quando una regola lessxer termina con il token impostato su SKIP_TOKEN. Tenere presente che se token==non definito alla fine di qualsiasi regola del token, ne crea uno automaticamente e lo genera.

Dettagli costruttore

ExpressionAntlrLexer(CharStream)

new ExpressionAntlrLexer(input: CharStream)

Parametri

input

CharStream

Dettagli proprietà

ARROW

public static ARROW: 27 = 27

Valore della proprietà

27

ASTERISK

public static ASTERISK: 6 = 6

Valore della proprietà

6

channelNames

public static channelNames: string[] = [
		"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
	]

Valore della proprietà

string[]

channelNames

string[] channelNames

Valore della proprietà

string[]

CLOSE_BRACKET

public static CLOSE_BRACKET: 19 = 19

Valore della proprietà

19

CLOSE_CURLY_BRACKET

public static CLOSE_CURLY_BRACKET: 24 = 24

Valore della proprietà

24

CLOSE_SQUARE_BRACKET

public static CLOSE_SQUARE_BRACKET: 22 = 22

Valore della proprietà

22

COLON

public static COLON: 26 = 26

Valore della proprietà

26

COMMA

public static COMMA: 25 = 25

Valore della proprietà

25

DOT

public static DOT: 20 = 20

Valore della proprietà

20

DOUBLE_AND

public static DOUBLE_AND: 12 = 12

Valore della proprietà

12

DOUBLE_EQUAL

public static DOUBLE_EQUAL: 9 = 9

Valore della proprietà

9

DOUBLE_VERTICAL_CYLINDER

public static DOUBLE_VERTICAL_CYLINDER: 13 = 13

Valore della proprietà

13

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 37 = 37

Valore della proprietà

37

grammarFileName

string grammarFileName

Valore della proprietà

string

IDENTIFIER

public static IDENTIFIER: 32 = 32

Valore della proprietà

32

ignoreWS

ignoreWS: boolean = true

Valore della proprietà

boolean

INVALID_TOKEN_DEFAULT_MODE

public static INVALID_TOKEN_DEFAULT_MODE: 35 = 35

Valore della proprietà

35

LESS_OR_EQUAl

public static LESS_OR_EQUAl: 16 = 16

Valore della proprietà

16

LESS_THAN

public static LESS_THAN: 14 = 14

Valore della proprietà

14

modeNames

public static modeNames: string[] = [
		"DEFAULT_MODE", "STRING_INTERPOLATION_MODE",
	]

Valore della proprietà

string[]

modeNames

string[] modeNames

Valore della proprietà

string[]

MORE_OR_EQUAL

public static MORE_OR_EQUAL: 17 = 17

Valore della proprietà

17

MORE_THAN

public static MORE_THAN: 15 = 15

Valore della proprietà

15

NEWLINE

public static NEWLINE: 33 = 33

Valore della proprietà

33

NON

public static NON: 4 = 4

Valore della proprietà

4

NOT_EQUAL

public static NOT_EQUAL: 10 = 10

Valore della proprietà

10

NULL_COALESCE

public static NULL_COALESCE: 28 = 28

Valore della proprietà

28

NUMBER

public static NUMBER: 30 = 30

Valore della proprietà

30

OPEN_BRACKET

public static OPEN_BRACKET: 18 = 18

Valore della proprietà

18

OPEN_CURLY_BRACKET

public static OPEN_CURLY_BRACKET: 23 = 23

Valore della proprietà

23

OPEN_SQUARE_BRACKET

public static OPEN_SQUARE_BRACKET: 21 = 21

Valore della proprietà

21

PERCENT

public static PERCENT: 8 = 8

Valore della proprietà

8

PLUS

public static PLUS: 2 = 2

Valore della proprietà

2

QUESTION_MARK

public static QUESTION_MARK: 29 = 29

Valore della proprietà

29

ruleNames

public static ruleNames: string[] = [
		"LETTER", "DIGIT", "OBJECT_DEFINITION", "STRING_INTERPOLATION_START", 
		"PLUS", "SUBSTRACT", "NON", "XOR", "ASTERISK", "SLASH", "PERCENT", "DOUBLE_EQUAL", 
		"NOT_EQUAL", "SINGLE_AND", "DOUBLE_AND", "DOUBLE_VERTICAL_CYLINDER", "LESS_THAN", 
		"MORE_THAN", "LESS_OR_EQUAl", "MORE_OR_EQUAL", "OPEN_BRACKET", "CLOSE_BRACKET", 
		"DOT", "OPEN_SQUARE_BRACKET", "CLOSE_SQUARE_BRACKET", "OPEN_CURLY_BRACKET", 
		"CLOSE_CURLY_BRACKET", "COMMA", "COLON", "ARROW", "NULL_COALESCE", "QUESTION_MARK", 
		"NUMBER", "WHITESPACE", "IDENTIFIER", "NEWLINE", "STRING", "INVALID_TOKEN_DEFAULT_MODE", 
		"STRING_INTERPOLATION_END", "TEMPLATE", "ESCAPE_CHARACTER", "TEXT_CONTENT",
	]

Valore della proprietà

string[]

ruleNames

string[] ruleNames

Valore della proprietà

string[]

serializedATN

string serializedATN

Valore della proprietà

string

SINGLE_AND

public static SINGLE_AND: 11 = 11

Valore della proprietà

11

SLASH

public static SLASH: 7 = 7

Valore della proprietà

7

STRING

public static STRING: 34 = 34

Valore della proprietà

34

STRING_INTERPOLATION_MODE

public static STRING_INTERPOLATION_MODE: 1 = 1

Valore della proprietà

1

STRING_INTERPOLATION_START

public static STRING_INTERPOLATION_START: 1 = 1

Valore della proprietà

1

SUBSTRACT

public static SUBSTRACT: 3 = 3

Valore della proprietà

3

TEMPLATE

public static TEMPLATE: 36 = 36

Valore della proprietà

36

TEXT_CONTENT

public static TEXT_CONTENT: 38 = 38

Valore della proprietà

38

VOCABULARY

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

Valore della proprietà

Vocabulary

vocabulary

Vocabulary vocabulary

Valore della proprietà

Vocabulary

WHITESPACE

public static WHITESPACE: 31 = 31

Valore della proprietà

31

XOR

public static XOR: 5 = 5

Valore della proprietà

5

Dettagli proprietà ereditate

atn

Ottenere il serializedATN usato dal riconoscitore per la stima.

atn: ATN

Valore della proprietà

ATN

ereditato da Recognizer.atn

channel

channel: number

Valore della proprietà

number

Ereditato da Lexer.channel

charIndex

Qual è l'indice del carattere corrente di lookahead?

charIndex: number

Valore della proprietà

number

ereditato da Lexer.charIndex

charPositionInLine

charPositionInLine: number

Valore della proprietà

number

ereditato da Lexer.charPositionInLine

DEFAULT_MODE

static DEFAULT_MODE: number

Valore della proprietà

number

ereditato da Lexer.DEFAULT_MODE

DEFAULT_TOKEN_CHANNEL

static DEFAULT_TOKEN_CHANNEL: number

Valore della proprietà

number

ereditato da Lexer.DEFAULT_TOKEN_CHANNEL

EOF

static EOF: number

Valore della proprietà

number

ereditato da Recognizer.EOF

HIDDEN

static HIDDEN: number

Valore della proprietà

number

ereditato da Lexer.HIDDEN

inputStream

Impostare il flusso char e reimpostare il lessxer

inputStream: CharStream

Valore della proprietà

CharStream

Ereditato da Lexer.inputStream

interpreter

Impostare l'interprete ATN usato dal riconoscitore per la stima.

interpreter: LexerATNSimulator

Valore della proprietà

LexerATNSimulator

Ereditato da Recognizer.interpreter

line

line: number

Valore della proprietà

number

Ereditato da Lexer.line

MAX_CHAR_VALUE

static MAX_CHAR_VALUE: number

Valore della proprietà

number

ereditato da Lexer.MAX_CHAR_VALUE

MIN_CHAR_VALUE

static MIN_CHAR_VALUE: number

Valore della proprietà

number

ereditato da Lexer.MIN_CHAR_VALUE

MORE

static MORE: number

Valore della proprietà

number

ereditato da Lexer.MORE

parseInfo

Se la profilatura durante l'analisi/lex restituirà i record DecisionInfo per ogni decisione nel riconoscimento in un oggetto ParseInfo.

parseInfo: Promise<ParseInfo | undefined>

Valore della proprietà

Promise<ParseInfo | undefined>

ereditato da Recognizer.parseInfo

SKIP

static SKIP: number

Valore della proprietà

number

ereditato da Lexer.SKIP

sourceName

sourceName: string

Valore della proprietà

string

ereditato da Lexer.sourceName

state

Indicare che il riconoscitore ha modificato lo stato interno coerente con lo stato ATN passato. In questo modo si sa sempre dove ci si trova nell'ATN mentre il parser va avanti. Gli oggetti contesto regola formano uno stack che consente di visualizzare lo stack di richiamo delle regole. Combinare questa operazione e sono disponibili informazioni di configurazione ATN complete.

state: number

Valore della proprietà

number

ereditato da Recognizer.state

text

Impostare il testo completo di questo token; cancella tutte le modifiche precedenti apportate al testo.

text: string

Valore della proprietà

string

Ereditato da Lexer.text

token

Eseguire l'override se si emettono più token.

token: Token | undefined

Valore della proprietà

Token | undefined

ereditato da Lexer.token

tokenFactory

tokenFactory: TokenFactory

Valore della proprietà

TokenFactory

Ereditato da Lexer.tokenFactory

type

type: number

Valore della proprietà

number

Ereditato da Lexer.type

Dettagli metodo

action(RuleContext, number, number)

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

Parametri

_localctx

RuleContext

ruleIndex

number

actionIndex

number

sempred(RuleContext, number, number)

function sempred(_localctx: RuleContext, ruleIndex: number, predIndex: number): boolean

Parametri

_localctx

RuleContext

ruleIndex

number

predIndex

number

Restituisce

boolean

Dettagli dei metodi ereditati

addErrorListener(ANTLRErrorListener<number>)

function addErrorListener(listener: ANTLRErrorListener<number>)

Parametri

listener

ANTLRErrorListener<number>

Ereditato da Recognizer.addErrorListener

emit()

Per impostazione predefinita, non supporta più emetti per ogni chiamata nextToken per motivi di efficienza. Sottoclasse ed eseguire l'override di questo metodo, nextToken e getToken (per eseguire il push dei token in un elenco ed eseguire il pull da tale elenco anziché da una singola variabile così come questa implementazione).

function emit(): Token

Restituisce

Token

Ereditato da Lexer.emit

emit(Token)

Il metodo standard chiamato per generare automaticamente un token nella regola lessicale più esterna. L'oggetto token deve puntare al buffer char start.. fermarsi. Se è presente un override di testo in 'text', usarlo per impostare il testo del token. Eseguire l'override di questo metodo per generare oggetti Token personalizzati o fornire una nuova factory.

function emit(token: Token): Token

Parametri

token

Token

Restituisce

Token

Ereditato da Lexer.emit

emitEOF()

function emitEOF(): Token

Restituisce

Token

ereditato da Lexer.emitEOF

getAllTokens()

Restituisce un elenco di tutti gli oggetti Token nel flusso char di input. Forza il caricamento di tutti i token. Non include il token EOF.

function getAllTokens(): Token[]

Restituisce

Token[]

ereditato da Lexer.getAllTokens

getCharErrorDisplay(number)

function getCharErrorDisplay(c: number): string

Parametri

c

number

Restituisce

string

Ereditato da Lexer.getCharErrorDisplay

getErrorDisplay(string | number)

function getErrorDisplay(s: string | number): string

Parametri

s

string | number

Restituisce

string

Ereditato da Lexer.getErrorDisplay

getErrorHeader(RecognitionException)

Qual è l'intestazione dell'errore, in genere informazioni sulla posizione di riga/carattere?

function getErrorHeader(e: RecognitionException): string

Parametri

e

RecognitionException

Restituisce

string

Ereditato da Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ANTLRErrorListener<number>

Restituisce

ANTLRErrorListener<number>

ereditato da Recognizer.getErrorListenerDispatch

getErrorListeners()

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

Restituisce

Array<ANTLRErrorListener<number>>

ereditato da Recognizer.getErrorListeners

getRuleIndexMap()

Ottenere una mappa dai nomi delle regole agli indici delle regole. Usato per la compilazione di modelli di albero e XPath.

function getRuleIndexMap(): ReadonlyMap<string, number>

Restituisce

ReadonlyMap<string, number>

Ereditato da Recognizer.getRuleIndexMap

getTokenType(string)

function getTokenType(tokenName: string): number

Parametri

tokenName

string

Restituisce

number

ereditato da Recognizer.getTokenType

getTokenTypeMap()

Ottenere una mappa dai nomi dei token ai tipi di token. Usato per la compilazione di modelli di albero e XPath.

function getTokenTypeMap(): ReadonlyMap<string, number>

Restituisce

ReadonlyMap<string, number>

Ereditato da Recognizer.getTokenTypeMap

mode(number)

function mode(m: number)

Parametri

m

number

Ereditato da Lexer.mode

more()

function more()

ereditato da Lexer.more

nextToken()

Restituisce un token da questa origine; ad esempio, trovare una corrispondenza con un token nel flusso char.

function nextToken(): Token

Restituisce

Token

ereditato da Lexer.nextToken

notifyListeners(LexerNoViableAltException)

function notifyListeners(e: LexerNoViableAltException)

Parametri

e

LexerNoViableAltException

Ereditato da Lexer.notifyListeners

popMode()

function popMode(): number

Restituisce

number

Ereditato da Lexer.popMode

precpred(RuleContext | undefined, number)

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

Parametri

localctx

RuleContext | undefined

precedence

number

Restituisce

boolean

ereditato da Recognizer.precpred

pushMode(number)

function pushMode(m: number)

Parametri

m

number

Ereditato da Lexer.pushMode

recover(LexerNoViableAltException)

function recover(re: LexerNoViableAltException)

Parametri

re

LexerNoViableAltException

ereditato da Lexer.recover

recover(RecognitionException)

I lexers possono in genere corrispondere a qualsiasi carattere nel suo vocabolario dopo aver abbinato un token, quindi fare la cosa semplice e semplicemente uccidere un personaggio e sperare che tutto funzioni. È invece possibile usare lo stack di chiamate delle regole per eseguire un ripristino degli errori sofisticato se si è in una regola di frammento.

function recover(re: RecognitionException)

Parametri

re

RecognitionException

ereditato da Lexer.recover

removeErrorListener(ANTLRErrorListener<number>)

function removeErrorListener(listener: ANTLRErrorListener<number>)

Parametri

listener

ANTLRErrorListener<number>

Ereditato da Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

Ereditato da Recognizer.removeErrorListeners

reset()

function reset()

Ereditato da Lexer.reset

reset(boolean)

function reset(resetInput: boolean)

Parametri

resetInput

boolean

Ereditato da Lexer.reset

skip()

Indicare al lexer di ignorare la creazione di un token per la regola lexer corrente e cercare un altro token. nextToken() sa continuare a cercare quando una regola lessxer termina con il token impostato su SKIP_TOKEN. Tenere presente che se token==non definito alla fine di qualsiasi regola del token, ne crea uno automaticamente e lo genera.

function skip()

ereditato da Lexer.skip