Partager via


LGTemplateLexer class

Extends

Lexer

Constructeurs

LGTemplateLexer(CharStream)

Propriétés

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

Propriétés héritées

atn

Obtenez le serializedATN utilisé par le module de reconnaissance pour la prédiction.

channel
charIndex

Quel est l’index du caractère actuel de lookahead ?

charPositionInLine
DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
EOF
HIDDEN
inputStream

Définir le flux de caractères et réinitialiser le lexer

interpreter

Définissez l’interpréteur ATN utilisé par le module de reconnaissance pour la prédiction.

line
MAX_CHAR_VALUE
MIN_CHAR_VALUE
MORE
parseInfo

Si le profilage s’effectue pendant l’analyse/lex, cela renvoie les enregistrements DecisionInfo pour chaque décision dans un objet ParseInfo.

SKIP
sourceName
state

Indiquez que le module de reconnaissance a modifié l’état interne qui est cohérent avec l’état ATN passé. De cette façon, nous savons toujours où nous sommes dans l’ATN à mesure que l’analyseur va le long. Les objets de contexte de règle forment une pile qui nous permet de voir la pile des règles d’appel. Combinez cette opération et nous disposons d’informations de configuration ATN complètes.

text

Définissez le texte complet de ce jeton ; elle réinitialise les modifications précédentes apportées au texte.

token

Remplacez si vous émettez plusieurs jetons.

tokenFactory
type

Méthodes

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

Méthodes héritées

addErrorListener(ANTLRErrorListener<number>)
emit()

Par défaut, il ne prend pas en charge plusieurs émissions par appel nextToken pour des raisons d’efficacité. Sous-classe et remplacement de cette méthode, nextToken et getToken (pour envoyer des jetons dans une liste et extraire de cette liste plutôt qu’une variable unique comme cette implémentation).

emit(Token)

Méthode standard appelée pour émettre automatiquement un jeton à la règle lexicale la plus externe. L’objet de jeton doit pointer vers le démarrage de la mémoire tampon char. arrêter. S’il existe un remplacement de texte dans « text », utilisez-le pour définir le texte du jeton. Remplacez cette méthode pour émettre des objets jeton personnalisés ou fournir une nouvelle fabrique.

emitEOF()
getAllTokens()

Retourne une liste de tous les objets Token dans le flux de caractères d’entrée. Force la charge de tous les jetons. N’inclut pas de jeton EOF.

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

Qu’est-ce que l’en-tête d’erreur, normalement les informations de position de ligne/caractère ?

getErrorListenerDispatch()
getErrorListeners()
getRuleIndexMap()

Obtenir une carte des noms de règles aux index de règle. Utilisé pour la compilation de modèles XPath et d’arborescence.

getTokenType(string)
getTokenTypeMap()

Obtenir un mappage des noms de jetons aux types de jetons. Utilisé pour la compilation de modèles XPath et d’arborescence.

mode(number)
more()
nextToken()

Retourne un jeton à partir de cette source ; c’est-à-dire faire correspondre un jeton sur le flux de caractères.

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

Lexers peut normalement correspondre à n’importe quel char dans son vocabulaire après avoir mis en correspondance un jeton, donc faire la chose facile et juste tuer un caractère et espérer que tout fonctionne. Vous pouvez utiliser plutôt la pile d’appel de règle pour effectuer une récupération d’erreur sophistiquée si vous êtes dans une règle de fragment.

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

Demandez au lexer d’ignorer la création d’un jeton pour la règle lexer actuelle et de rechercher un autre jeton. nextToken() sait continuer à regarder quand une règle lexer se termine avec le jeton défini sur SKIP_TOKEN. Rappelez-vous que si token==undefined à la fin d’une règle de jeton, il en crée un pour vous et l’émet.

Détails du constructeur

LGTemplateLexer(CharStream)

new LGTemplateLexer(input: CharStream)

Paramètres

input

CharStream

Détails de la propriété

beginOfStructureProperty

beginOfStructureProperty: boolean = false

Valeur de propriété

boolean

beginOfTemplateBody

beginOfTemplateBody: boolean = true

Valeur de propriété

boolean

beginOfTemplateLine

beginOfTemplateLine: boolean = false

Valeur de propriété

boolean

CASE

public static CASE: 14 = 14

Valeur de propriété

14

channelNames

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

Valeur de propriété

string[]

channelNames

string[] channelNames

Valeur de propriété

string[]

COMMENTS

public static COMMENTS: 3 = 3

Valeur de propriété

3

DASH

public static DASH: 4 = 4

Valeur de propriété

4

DEFAULT

public static DEFAULT: 15 = 15

Valeur de propriété

15

ELSE

public static ELSE: 12 = 12

Valeur de propriété

12

ELSEIF

public static ELSEIF: 11 = 11

Valeur de propriété

11

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 16 = 16

Valeur de propriété

16

ESCAPE_CHARACTER_IN_STRUCTURE_BODY

public static ESCAPE_CHARACTER_IN_STRUCTURE_BODY: 31 = 31

Valeur de propriété

31

EXPRESSION

public static EXPRESSION: 17 = 17

Valeur de propriété

17

EXPRESSION_IN_STRUCTURE_BODY

public static EXPRESSION_IN_STRUCTURE_BODY: 32 = 32

Valeur de propriété

32

grammarFileName

string grammarFileName

Valeur de propriété

string

IF

public static IF: 10 = 10

Valeur de propriété

10

ignoreWS

ignoreWS: boolean = true

Valeur de propriété

boolean

inMultiline

inMultiline: boolean = false

Valeur de propriété

boolean

inStructuredValue

inStructuredValue: boolean = false

Valeur de propriété

boolean

INVALID_TOKEN

public static INVALID_TOKEN: 6 = 6

Valeur de propriété

6

LEFT_SQUARE_BRACKET

public static LEFT_SQUARE_BRACKET: 5 = 5

Valeur de propriété

5

modeNames

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

Valeur de propriété

string[]

modeNames

string[] modeNames

Valeur de propriété

string[]

MULTILINE_MODE

public static MULTILINE_MODE: 2 = 2

Valeur de propriété

2

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 8 = 8

Valeur de propriété

8

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 19 = 19

Valeur de propriété

19

NEWLINE

public static NEWLINE: 2 = 2

Valeur de propriété

2

NEWLINE_IN_BODY

public static NEWLINE_IN_BODY: 9 = 9

Valeur de propriété

9

NEWLINE_IN_STRUCTURE_NAME

public static NEWLINE_IN_STRUCTURE_NAME: 21 = 21

Valeur de propriété

21

NORMAL_TEMPLATE_BODY_MODE

public static NORMAL_TEMPLATE_BODY_MODE: 1 = 1

Valeur de propriété

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

Valeur de propriété

string[]

ruleNames

string[] ruleNames

Valeur de propriété

string[]

serializedATN

string serializedATN

Valeur de propriété

string

STRUCTURED_BODY_END

public static STRUCTURED_BODY_END: 27 = 27

Valeur de propriété

27

STRUCTURED_COMMENTS

public static STRUCTURED_COMMENTS: 24 = 24

Valeur de propriété

24

STRUCTURED_NEWLINE

public static STRUCTURED_NEWLINE: 26 = 26

Valeur de propriété

26

STRUCTURE_BODY_MODE

public static STRUCTURE_BODY_MODE: 4 = 4

Valeur de propriété

4

STRUCTURE_EQUALS

public static STRUCTURE_EQUALS: 29 = 29

Valeur de propriété

29

STRUCTURE_IDENTIFIER

public static STRUCTURE_IDENTIFIER: 28 = 28

Valeur de propriété

28

STRUCTURE_NAME

public static STRUCTURE_NAME: 22 = 22

Valeur de propriété

22

STRUCTURE_NAME_MODE

public static STRUCTURE_NAME_MODE: 3 = 3

Valeur de propriété

3

STRUCTURE_OR_MARK

public static STRUCTURE_OR_MARK: 30 = 30

Valeur de propriété

30

SWITCH

public static SWITCH: 13 = 13

Valeur de propriété

13

TEXT

public static TEXT: 18 = 18

Valeur de propriété

18

TEXT_IN_STRUCTURE_BODY

public static TEXT_IN_STRUCTURE_BODY: 33 = 33

Valeur de propriété

33

TEXT_IN_STRUCTURE_NAME

public static TEXT_IN_STRUCTURE_NAME: 23 = 23

Valeur de propriété

23

VOCABULARY

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

Valeur de propriété

Vocabulary

vocabulary

Vocabulary vocabulary

Valeur de propriété

Vocabulary

WS

public static WS: 1 = 1

Valeur de propriété

1

WS_IN_BODY

public static WS_IN_BODY: 7 = 7

Valeur de propriété

7

WS_IN_STRUCTURE_BODY

public static WS_IN_STRUCTURE_BODY: 25 = 25

Valeur de propriété

25

WS_IN_STRUCTURE_NAME

public static WS_IN_STRUCTURE_NAME: 20 = 20

Valeur de propriété

20

Détails de la propriété héritée

atn

Obtenez le serializedATN utilisé par le module de reconnaissance pour la prédiction.

atn: ATN

Valeur de propriété

ATN

héritée de Recognizer.atn

channel

channel: number

Valeur de propriété

number

héritée de Lexer.channel

charIndex

Quel est l’index du caractère actuel de lookahead ?

charIndex: number

Valeur de propriété

number

héritée de Lexer.charIndex

charPositionInLine

charPositionInLine: number

Valeur de propriété

number

héritée de Lexer.charPositionInLine

DEFAULT_MODE

static DEFAULT_MODE: number

Valeur de propriété

number

héritée de Lexer.DEFAULT_MODE

DEFAULT_TOKEN_CHANNEL

static DEFAULT_TOKEN_CHANNEL: number

Valeur de propriété

number

héritée de Lexer.DEFAULT_TOKEN_CHANNEL

EOF

static EOF: number

Valeur de propriété

number

héritée de Recognizer.EOF

HIDDEN

static HIDDEN: number

Valeur de propriété

number

héritée de Lexer.HIDDEN

inputStream

Définir le flux de caractères et réinitialiser le lexer

inputStream: CharStream

Valeur de propriété

CharStream

héritée de Lexer.inputStream

interpreter

Définissez l’interpréteur ATN utilisé par le module de reconnaissance pour la prédiction.

interpreter: LexerATNSimulator

Valeur de propriété

LexerATNSimulator

héritée de Recognizer.interpreter

line

line: number

Valeur de propriété

number

héritée de Lexer.line

MAX_CHAR_VALUE

static MAX_CHAR_VALUE: number

Valeur de propriété

number

héritée de Lexer.MAX_CHAR_VALUE

MIN_CHAR_VALUE

static MIN_CHAR_VALUE: number

Valeur de propriété

number

héritée de Lexer.MIN_CHAR_VALUE

MORE

static MORE: number

Valeur de propriété

number

héritée de Lexer.MORE

parseInfo

Si le profilage s’effectue pendant l’analyse/lex, cela renvoie les enregistrements DecisionInfo pour chaque décision dans un objet ParseInfo.

parseInfo: Promise<ParseInfo | undefined>

Valeur de propriété

Promise<ParseInfo | undefined>

héritée de Recognizer.parseInfo

SKIP

static SKIP: number

Valeur de propriété

number

héritée de Lexer.SKIP

sourceName

sourceName: string

Valeur de propriété

string

héritée de Lexer.sourceName

state

Indiquez que le module de reconnaissance a modifié l’état interne qui est cohérent avec l’état ATN passé. De cette façon, nous savons toujours où nous sommes dans l’ATN à mesure que l’analyseur va le long. Les objets de contexte de règle forment une pile qui nous permet de voir la pile des règles d’appel. Combinez cette opération et nous disposons d’informations de configuration ATN complètes.

state: number

Valeur de propriété

number

héritée de Recognizer.state

text

Définissez le texte complet de ce jeton ; elle réinitialise les modifications précédentes apportées au texte.

text: string

Valeur de propriété

string

héritée de Lexer.text

token

Remplacez si vous émettez plusieurs jetons.

token: Token | undefined

Valeur de propriété

Token | undefined

héritée de Lexer.token

tokenFactory

tokenFactory: TokenFactory

Valeur de propriété

TokenFactory

héritée de Lexer.tokenFactory

type

type: number

Valeur de propriété

number

héritée de Lexer.type

Détails de la méthode

action(RuleContext, number, number)

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

Paramètres

_localctx

RuleContext

ruleIndex

number

actionIndex

number

sempred(RuleContext, number, number)

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

Paramètres

_localctx

RuleContext

ruleIndex

number

predIndex

number

Retours

boolean

Détails de la méthode héritée

addErrorListener(ANTLRErrorListener<number>)

function addErrorListener(listener: ANTLRErrorListener<number>)

Paramètres

listener

ANTLRErrorListener<number>

héritée de Recognizer.addErrorListener

emit()

Par défaut, il ne prend pas en charge plusieurs émissions par appel nextToken pour des raisons d’efficacité. Sous-classe et remplacement de cette méthode, nextToken et getToken (pour envoyer des jetons dans une liste et extraire de cette liste plutôt qu’une variable unique comme cette implémentation).

function emit(): Token

Retours

Token

héritée de Lexer.emit

emit(Token)

Méthode standard appelée pour émettre automatiquement un jeton à la règle lexicale la plus externe. L’objet de jeton doit pointer vers le démarrage de la mémoire tampon char. arrêter. S’il existe un remplacement de texte dans « text », utilisez-le pour définir le texte du jeton. Remplacez cette méthode pour émettre des objets jeton personnalisés ou fournir une nouvelle fabrique.

function emit(token: Token): Token

Paramètres

token

Token

Retours

Token

héritée de Lexer.emit

emitEOF()

function emitEOF(): Token

Retours

Token

héritée de Lexer.emitEOF

getAllTokens()

Retourne une liste de tous les objets Token dans le flux de caractères d’entrée. Force la charge de tous les jetons. N’inclut pas de jeton EOF.

function getAllTokens(): Token[]

Retours

Token[]

héritée de Lexer.getAllTokens

getCharErrorDisplay(number)

function getCharErrorDisplay(c: number): string

Paramètres

c

number

Retours

string

héritée de Lexer.getCharErrorDisplay

getErrorDisplay(string | number)

function getErrorDisplay(s: string | number): string

Paramètres

s

string | number

Retours

string

héritée de Lexer.getErrorDisplay

getErrorHeader(RecognitionException)

Qu’est-ce que l’en-tête d’erreur, normalement les informations de position de ligne/caractère ?

function getErrorHeader(e: RecognitionException): string

Paramètres

e

RecognitionException

Retours

string

héritée de Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ANTLRErrorListener<number>

Retours

ANTLRErrorListener<number>

héritée de Recognizer.getErrorListenerDispatch

getErrorListeners()

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

Retours

Array<ANTLRErrorListener<number>>

héritée de Recognizer.getErrorListeners

getRuleIndexMap()

Obtenir une carte des noms de règles aux index de règle. Utilisé pour la compilation de modèles XPath et d’arborescence.

function getRuleIndexMap(): ReadonlyMap<string, number>

Retours

ReadonlyMap<string, number>

héritée de Recognizer.getRuleIndexMap

getTokenType(string)

function getTokenType(tokenName: string): number

Paramètres

tokenName

string

Retours

number

héritée de Recognizer.getTokenType

getTokenTypeMap()

Obtenir un mappage des noms de jetons aux types de jetons. Utilisé pour la compilation de modèles XPath et d’arborescence.

function getTokenTypeMap(): ReadonlyMap<string, number>

Retours

ReadonlyMap<string, number>

héritée de Recognizer.getTokenTypeMap

mode(number)

function mode(m: number)

Paramètres

m

number

héritée de Lexer.mode

more()

function more()

héritée de Lexer.more

nextToken()

Retourne un jeton à partir de cette source ; c’est-à-dire faire correspondre un jeton sur le flux de caractères.

function nextToken(): Token

Retours

Token

héritée de Lexer.nextToken

notifyListeners(LexerNoViableAltException)

function notifyListeners(e: LexerNoViableAltException)

Paramètres

e

LexerNoViableAltException

héritée de Lexer.notifyListeners

popMode()

function popMode(): number

Retours

number

héritée de Lexer.popMode

precpred(RuleContext | undefined, number)

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

Paramètres

localctx

RuleContext | undefined

precedence

number

Retours

boolean

héritée de Recognizer.precpred

pushMode(number)

function pushMode(m: number)

Paramètres

m

number

héritée de Lexer.pushMode

recover(LexerNoViableAltException)

function recover(re: LexerNoViableAltException)

Paramètres

re

LexerNoViableAltException

héritée de Lexer.recover

recover(RecognitionException)

Lexers peut normalement correspondre à n’importe quel char dans son vocabulaire après avoir mis en correspondance un jeton, donc faire la chose facile et juste tuer un caractère et espérer que tout fonctionne. Vous pouvez utiliser plutôt la pile d’appel de règle pour effectuer une récupération d’erreur sophistiquée si vous êtes dans une règle de fragment.

function recover(re: RecognitionException)

Paramètres

re

RecognitionException

héritée de Lexer.recover

removeErrorListener(ANTLRErrorListener<number>)

function removeErrorListener(listener: ANTLRErrorListener<number>)

Paramètres

listener

ANTLRErrorListener<number>

héritée de Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

héritée de Recognizer.removeErrorListeners

reset()

function reset()

héritée de Lexer.reset

reset(boolean)

function reset(resetInput: boolean)

Paramètres

resetInput

boolean

héritée de Lexer.reset

skip()

Demandez au lexer d’ignorer la création d’un jeton pour la règle lexer actuelle et de rechercher un autre jeton. nextToken() sait continuer à regarder quand une règle lexer se termine avec le jeton défini sur SKIP_TOKEN. Rappelez-vous que si token==undefined à la fin d’une règle de jeton, il en crée un pour vous et l’émet.

function skip()

héritée de Lexer.skip