Compartilhar via


LGTemplateLexer class

Extends

Lexer

Construtores

LGTemplateLexer(CharStream)

Propriedades

beginOfStructureProperty
beginOfTemplateBody
beginOfTemplateLine
CASE
channelNames
channelNames
COMMENTS
DASH
DEFAULT
ELSE
ELSEIF
ESCAPE_CHARACTER
ESCAPE_CHARACTER_IN_STRUCTURE_BODY
EXPRESSION
EXPRESSION_IN_STRUCTURE_BODY
grammarFileName
IF
ignoreWS
inMultiline
inStructuredValue
INVALID_TOKEN
LEFT_SQUARE_BRACKET
modeNames
modeNames
MULTILINE_MODE
MULTILINE_PREFIX
MULTILINE_SUFFIX
NEWLINE
NEWLINE_IN_BODY
NEWLINE_IN_STRUCTURE_NAME
NORMAL_TEMPLATE_BODY_MODE
ruleNames
ruleNames
serializedATN
STRUCTURED_BODY_END
STRUCTURED_COMMENTS
STRUCTURED_NEWLINE
STRUCTURE_BODY_MODE
STRUCTURE_EQUALS
STRUCTURE_IDENTIFIER
STRUCTURE_NAME
STRUCTURE_NAME_MODE
STRUCTURE_OR_MARK
SWITCH
TEXT
TEXT_IN_STRUCTURE_BODY
TEXT_IN_STRUCTURE_NAME
VOCABULARY
vocabulary
WS
WS_IN_BODY
WS_IN_STRUCTURE_BODY
WS_IN_STRUCTURE_NAME

Propriedades herdadas

atn

Obtenha o serializedATN usado pelo reconhecedor para previsão.

channel
charIndex

Qual é o índice do caractere atual do lookahead?

charPositionInLine
DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
EOF
HIDDEN
inputStream

Definir o fluxo de caracteres e redefinir o lexer

interpreter

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

line
MAX_CHAR_VALUE
MIN_CHAR_VALUE
MORE
parseInfo

Se a criação de perfil durante a análise/lex, isso retornará registros DecisionInfo para cada decisão no reconhecedor em um objeto ParseInfo.

SKIP
sourceName
state

Indique que o reconhecedor alterou o estado interno que é consistente com o estado atn passado. Dessa forma, sempre sabemos onde estamos no 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 de ATN.

text

Defina o texto completo deste token; apaga as alterações anteriores no texto.

token

Substitua se estiver emitindo vários tokens.

tokenFactory
type

Métodos

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

Métodos herdados

addErrorListener(ANTLRErrorListener<number>)
emit()

Por padrão, não dá suporte a várias emissões por invocação nextToken por motivos de eficiência. Subclasse e substitua esse método, nextToken e getToken (para enviar tokens por push para uma lista e efetuar pull dessa lista em vez de uma única variável como essa implementação faz).

emit(Token)

O método padrão chamado para emitir automaticamente um token na regra lexical mais externa. O objeto de token deve apontar para o início do buffer de caracteres.. parar. Se houver uma substituição de texto em 'text', use-a para definir o texto do token. Substitua esse método para emitir objetos token personalizados ou fornecer uma nova fábrica.

emitEOF()
getAllTokens()

Retornar uma lista de todos os objetos Token no fluxo de caracteres de entrada. Força o carregamento de todos os tokens. Não inclui o token EOF.

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

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

getErrorListenerDispatch()
getErrorListeners()
getRuleIndexMap()

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

getTokenType(string)
getTokenTypeMap()

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

mode(number)
more()
nextToken()

Retornar um token dessa origem; Ou seja, corresponda a um token no fluxo de caracteres.

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

Lexers normalmente podem corresponder qualquer char em seu vocabulário depois de corresponder a um token, então faça a coisa fácil e apenas mate um personagem e espere que tudo dê certo. Em vez disso, você pode usar a pilha de invocação de regra para fazer uma recuperação de erro sofisticada se estiver em uma regra de fragmento.

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

Instrua o lexer a ignorar a criação de um token para a regra lexer atual e procurar outro token. nextToken() sabe continuar procurando quando uma regra lexer termina com o token definido como SKIP_TOKEN. Lembre-se de que, se token==undefined no final de qualquer regra de token, ele cria um para você e o emite.

Detalhes do construtor

LGTemplateLexer(CharStream)

new LGTemplateLexer(input: CharStream)

Parâmetros

input

CharStream

Detalhes da propriedade

beginOfStructureProperty

beginOfStructureProperty: boolean = false

Valor da propriedade

boolean

beginOfTemplateBody

beginOfTemplateBody: boolean = true

Valor da propriedade

boolean

beginOfTemplateLine

beginOfTemplateLine: boolean = false

Valor da propriedade

boolean

CASE

public static CASE: 14 = 14

Valor da propriedade

14

channelNames

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

Valor da propriedade

string[]

channelNames

string[] channelNames

Valor da propriedade

string[]

COMMENTS

public static COMMENTS: 3 = 3

Valor da propriedade

3

DASH

public static DASH: 4 = 4

Valor da propriedade

4

DEFAULT

public static DEFAULT: 15 = 15

Valor da propriedade

15

ELSE

public static ELSE: 12 = 12

Valor da propriedade

12

ELSEIF

public static ELSEIF: 11 = 11

Valor da propriedade

11

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 16 = 16

Valor da propriedade

16

ESCAPE_CHARACTER_IN_STRUCTURE_BODY

public static ESCAPE_CHARACTER_IN_STRUCTURE_BODY: 31 = 31

Valor da propriedade

31

EXPRESSION

public static EXPRESSION: 17 = 17

Valor da propriedade

17

EXPRESSION_IN_STRUCTURE_BODY

public static EXPRESSION_IN_STRUCTURE_BODY: 32 = 32

Valor da propriedade

32

grammarFileName

string grammarFileName

Valor da propriedade

string

IF

public static IF: 10 = 10

Valor da propriedade

10

ignoreWS

ignoreWS: boolean = true

Valor da propriedade

boolean

inMultiline

inMultiline: boolean = false

Valor da propriedade

boolean

inStructuredValue

inStructuredValue: boolean = false

Valor da propriedade

boolean

INVALID_TOKEN

public static INVALID_TOKEN: 6 = 6

Valor da propriedade

6

LEFT_SQUARE_BRACKET

public static LEFT_SQUARE_BRACKET: 5 = 5

Valor da propriedade

5

modeNames

public static modeNames: string[] = [
		"DEFAULT_MODE", "NORMAL_TEMPLATE_BODY_MODE", "MULTILINE_MODE", "STRUCTURE_NAME_MODE", 
		"STRUCTURE_BODY_MODE",
	]

Valor da propriedade

string[]

modeNames

string[] modeNames

Valor da propriedade

string[]

MULTILINE_MODE

public static MULTILINE_MODE: 2 = 2

Valor da propriedade

2

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 8 = 8

Valor da propriedade

8

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 19 = 19

Valor da propriedade

19

NEWLINE

public static NEWLINE: 2 = 2

Valor da propriedade

2

NEWLINE_IN_BODY

public static NEWLINE_IN_BODY: 9 = 9

Valor da propriedade

9

NEWLINE_IN_STRUCTURE_NAME

public static NEWLINE_IN_STRUCTURE_NAME: 21 = 21

Valor da propriedade

21

NORMAL_TEMPLATE_BODY_MODE

public static NORMAL_TEMPLATE_BODY_MODE: 1 = 1

Valor da propriedade

1

ruleNames

public static ruleNames: string[] = [
		"A", "C", "D", "E", "F", "H", "I", "L", "S", "T", "U", "W", "LETTER", 
		"NUMBER", "WHITESPACE", "STRING_LITERAL", "STRING_INTERPOLATION", "ESCAPE_CHARACTER_FRAGMENT", 
		"IDENTIFIER", "OBJECT_DEFINITION", "EXPRESSION_FRAGMENT", "NEWLINE_FRAGMENT", 
		"WS", "NEWLINE", "COMMENTS", "DASH", "LEFT_SQUARE_BRACKET", "INVALID_TOKEN", 
		"WS_IN_BODY", "MULTILINE_PREFIX", "NEWLINE_IN_BODY", "IF", "ELSEIF", "ELSE", 
		"SWITCH", "CASE", "DEFAULT", "ESCAPE_CHARACTER", "EXPRESSION", "TEXT", 
		"MULTILINE_SUFFIX", "MULTILINE_ESCAPE_CHARACTER", "MULTILINE_EXPRESSION", 
		"MULTILINE_TEXT", "WS_IN_STRUCTURE_NAME", "NEWLINE_IN_STRUCTURE_NAME", 
		"STRUCTURE_NAME", "TEXT_IN_STRUCTURE_NAME", "STRUCTURED_COMMENTS", "WS_IN_STRUCTURE_BODY", 
		"STRUCTURED_NEWLINE", "STRUCTURED_BODY_END", "STRUCTURE_IDENTIFIER", "STRUCTURE_EQUALS", 
		"STRUCTURE_OR_MARK", "ESCAPE_CHARACTER_IN_STRUCTURE_BODY", "EXPRESSION_IN_STRUCTURE_BODY", 
		"TEXT_IN_STRUCTURE_BODY",
	]

Valor da propriedade

string[]

ruleNames

string[] ruleNames

Valor da propriedade

string[]

serializedATN

string serializedATN

Valor da propriedade

string

STRUCTURED_BODY_END

public static STRUCTURED_BODY_END: 27 = 27

Valor da propriedade

27

STRUCTURED_COMMENTS

public static STRUCTURED_COMMENTS: 24 = 24

Valor da propriedade

24

STRUCTURED_NEWLINE

public static STRUCTURED_NEWLINE: 26 = 26

Valor da propriedade

26

STRUCTURE_BODY_MODE

public static STRUCTURE_BODY_MODE: 4 = 4

Valor da propriedade

4

STRUCTURE_EQUALS

public static STRUCTURE_EQUALS: 29 = 29

Valor da propriedade

29

STRUCTURE_IDENTIFIER

public static STRUCTURE_IDENTIFIER: 28 = 28

Valor da propriedade

28

STRUCTURE_NAME

public static STRUCTURE_NAME: 22 = 22

Valor da propriedade

22

STRUCTURE_NAME_MODE

public static STRUCTURE_NAME_MODE: 3 = 3

Valor da propriedade

3

STRUCTURE_OR_MARK

public static STRUCTURE_OR_MARK: 30 = 30

Valor da propriedade

30

SWITCH

public static SWITCH: 13 = 13

Valor da propriedade

13

TEXT

public static TEXT: 18 = 18

Valor da propriedade

18

TEXT_IN_STRUCTURE_BODY

public static TEXT_IN_STRUCTURE_BODY: 33 = 33

Valor da propriedade

33

TEXT_IN_STRUCTURE_NAME

public static TEXT_IN_STRUCTURE_NAME: 23 = 23

Valor da propriedade

23

VOCABULARY

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

Valor da propriedade

Vocabulary

vocabulary

Vocabulary vocabulary

Valor da propriedade

Vocabulary

WS

public static WS: 1 = 1

Valor da propriedade

1

WS_IN_BODY

public static WS_IN_BODY: 7 = 7

Valor da propriedade

7

WS_IN_STRUCTURE_BODY

public static WS_IN_STRUCTURE_BODY: 25 = 25

Valor da propriedade

25

WS_IN_STRUCTURE_NAME

public static WS_IN_STRUCTURE_NAME: 20 = 20

Valor da propriedade

20

Detalhes das propriedades herdadas

atn

Obtenha o serializedATN usado pelo reconhecedor para previsão.

atn: ATN

Valor da propriedade

ATN

Herdado de Recognizer.atn

channel

channel: number

Valor da propriedade

number

Herdado de Lexer.channel

charIndex

Qual é o índice do caractere atual do lookahead?

charIndex: number

Valor da propriedade

number

herdado de Lexer.charIndex

charPositionInLine

charPositionInLine: number

Valor da propriedade

number

Herdado de Lexer.charPositionInLine

DEFAULT_MODE

static DEFAULT_MODE: number

Valor da propriedade

number

herdado de Lexer.DEFAULT_MODE

DEFAULT_TOKEN_CHANNEL

static DEFAULT_TOKEN_CHANNEL: number

Valor da propriedade

number

herdado de Lexer.DEFAULT_TOKEN_CHANNEL

EOF

static EOF: number

Valor da propriedade

number

herdado de Recognizer.EOF

HIDDEN

static HIDDEN: number

Valor da propriedade

number

herdado de Lexer.HIDDEN

inputStream

Definir o fluxo de caracteres e redefinir o lexer

inputStream: CharStream

Valor da propriedade

CharStream

Herdado de Lexer.inputStream

interpreter

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

interpreter: LexerATNSimulator

Valor da propriedade

LexerATNSimulator

Herdado de Recognizer.interprete

line

line: number

Valor da propriedade

number

herdado de Lexer.line

MAX_CHAR_VALUE

static MAX_CHAR_VALUE: number

Valor da propriedade

number

herdado de Lexer.MAX_CHAR_VALUE

MIN_CHAR_VALUE

static MIN_CHAR_VALUE: number

Valor da propriedade

number

herdado de Lexer.MIN_CHAR_VALUE

MORE

static MORE: number

Valor da propriedade

number

herdado de Lexer.MORE

parseInfo

Se a criação de perfil durante a análise/lex, isso retornará registros DecisionInfo para cada decisão no reconhecedor em um objeto ParseInfo.

parseInfo: Promise<ParseInfo | undefined>

Valor da propriedade

Promise<ParseInfo | undefined>

Herdado de Recognizer.parseInfo

SKIP

static SKIP: number

Valor da propriedade

number

herdado de Lexer.SKIP

sourceName

sourceName: string

Valor da propriedade

string

Herdado de Lexer.sourceName

state

Indique que o reconhecedor alterou o estado interno que é consistente com o estado atn passado. Dessa forma, sempre sabemos onde estamos no 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 de ATN.

state: number

Valor da propriedade

number

Herdado de Recognizer.state

text

Defina o texto completo deste token; apaga as alterações anteriores no texto.

text: string

Valor da propriedade

string

herdado de Lexer.text

token

Substitua se estiver emitindo vários tokens.

token: Token | undefined

Valor da propriedade

Token | undefined

herdado de Lexer.token

tokenFactory

tokenFactory: TokenFactory

Valor da propriedade

TokenFactory

herdado de Lexer.tokenFactory

type

type: number

Valor da propriedade

number

Herdado de Lexer.type

Detalhes do método

action(RuleContext, number, number)

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

Parâmetros

_localctx

RuleContext

ruleIndex

number

actionIndex

number

sempred(RuleContext, number, number)

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

Parâmetros

_localctx

RuleContext

ruleIndex

number

predIndex

number

Retornos

boolean

Detalhes do método herdado

addErrorListener(ANTLRErrorListener<number>)

function addErrorListener(listener: ANTLRErrorListener<number>)

Parâmetros

listener

ANTLRErrorListener<number>

Herdado de Recognizer.addErrorListener

emit()

Por padrão, não dá suporte a várias emissões por invocação nextToken por motivos de eficiência. Subclasse e substitua esse método, nextToken e getToken (para enviar tokens por push para uma lista e efetuar pull dessa lista em vez de uma única variável como essa implementação faz).

function emit(): Token

Retornos

Token

Herdado de Lexer.emit

emit(Token)

O método padrão chamado para emitir automaticamente um token na regra lexical mais externa. O objeto de token deve apontar para o início do buffer de caracteres.. parar. Se houver uma substituição de texto em 'text', use-a para definir o texto do token. Substitua esse método para emitir objetos token personalizados ou fornecer uma nova fábrica.

function emit(token: Token): Token

Parâmetros

token

Token

Retornos

Token

Herdado de Lexer.emit

emitEOF()

function emitEOF(): Token

Retornos

Token

Herdado de Lexer.emitEOF

getAllTokens()

Retornar uma lista de todos os objetos Token no fluxo de caracteres de entrada. Força o carregamento de todos os tokens. Não inclui o token EOF.

function getAllTokens(): Token[]

Retornos

Token[]

herdado de Lexer.getAllTokens

getCharErrorDisplay(number)

function getCharErrorDisplay(c: number): string

Parâmetros

c

number

Retornos

string

Herdado de Lexer.getCharErrorDisplay

getErrorDisplay(string | number)

function getErrorDisplay(s: string | number): string

Parâmetros

s

string | number

Retornos

string

Herdado de Lexer.getErrorDisplay

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(): ANTLRErrorListener<number>

Retornos

ANTLRErrorListener<number>

Herdado de Recognizer.getErrorListenerDispatch

getErrorListeners()

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

Retornos

Array<ANTLRErrorListener<number>>

Herdado de Recognizer.getErrorListeners

getRuleIndexMap()

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

function getRuleIndexMap(): ReadonlyMap<string, number>

Retornos

ReadonlyMap<string, number>

Herdado de Recognizer.getRuleIndexMap

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 padrões de árvore e XPath.

function getTokenTypeMap(): ReadonlyMap<string, number>

Retornos

ReadonlyMap<string, number>

herdado de Recognizer.getTokenTypeMap

mode(number)

function mode(m: number)

Parâmetros

m

number

Herdado de Lexer.mode

more()

function more()

herdado de Lexer.more

nextToken()

Retornar um token dessa origem; Ou seja, corresponda a um token no fluxo de caracteres.

function nextToken(): Token

Retornos

Token

Herdado de Lexer.nextToken

notifyListeners(LexerNoViableAltException)

function notifyListeners(e: LexerNoViableAltException)

Parâmetros

e

LexerNoViableAltException

Herdado de Lexer.notifyListeners

popMode()

function popMode(): number

Retornos

number

Herdado de Lexer.popMode

precpred(RuleContext | undefined, number)

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

Parâmetros

localctx

RuleContext | undefined

precedence

number

Retornos

boolean

Herdado de Recognizer.precpred

pushMode(number)

function pushMode(m: number)

Parâmetros

m

number

herdado de Lexer.pushMode

recover(LexerNoViableAltException)

function recover(re: LexerNoViableAltException)

Parâmetros

re

LexerNoViableAltException

Herdado de Lexer.recover

recover(RecognitionException)

Lexers normalmente podem corresponder qualquer char em seu vocabulário depois de corresponder a um token, então faça a coisa fácil e apenas mate um personagem e espere que tudo dê certo. Em vez disso, você pode usar a pilha de invocação de regra para fazer uma recuperação de erro sofisticada se estiver em uma regra de fragmento.

function recover(re: RecognitionException)

Parâmetros

re

RecognitionException

Herdado de Lexer.recover

removeErrorListener(ANTLRErrorListener<number>)

function removeErrorListener(listener: ANTLRErrorListener<number>)

Parâmetros

listener

ANTLRErrorListener<number>

Herdado de Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

Herdado de Recognizer.removeErrorListeners

reset()

function reset()

Herdado de Lexer.reset

reset(boolean)

function reset(resetInput: boolean)

Parâmetros

resetInput

boolean

Herdado de Lexer.reset

skip()

Instrua o lexer a ignorar a criação de um token para a regra lexer atual e procurar outro token. nextToken() sabe continuar procurando quando uma regra lexer termina com o token definido como SKIP_TOKEN. Lembre-se de que, se token==undefined no final de qualquer regra de token, ele cria um para você e o emite.

function skip()

herdado de Lexer.skip