Поделиться через


LGTemplateLexer class

Extends

Lexer

Конструкторы

LGTemplateLexer(CharStream)

Свойства

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

Унаследованные свойства

atn

Возвращает объект , используемый serializedATN распознавательом для прогнозирования.

channel
charIndex

Каков индекс текущего символа lookahead?

charPositionInLine
DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
EOF
HIDDEN
inputStream

Установка потока символов и сброс лексера

interpreter

Задайте интерпретатор ATN, используемый распознавателем для прогнозирования.

line
MAX_CHAR_VALUE
MIN_CHAR_VALUE
MORE
parseInfo

Если выполняется профилирование во время parse/lex, будут возвращены записи DecisionInfo для каждого решения в распознавателье в объекте ParseInfo.

SKIP
sourceName
state

Укажите, что распознаватель изменил внутреннее состояние, согласующееся с переданным состоянием ATN. Таким образом, мы всегда знаем, где мы в ATN, как синтаксический анализатор идет вместе. Объекты контекста правила образуют стек, который позволяет нам видеть стек вызова правил. Объедините это, и у нас есть полные сведения о конфигурации ATN.

text

Задайте полный текст этого токена; он очищает все предыдущие изменения в тексте.

token

Переопределение при создании нескольких маркеров.

tokenFactory
type

Методы

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

Наследуемые методы

addErrorListener(ANTLRErrorListener<number>)
emit()

По умолчанию не поддерживает несколько выдач для каждого вызова nextToken по соображениям эффективности. Подкласс и переопределите этот метод, nextToken и getToken (для отправки маркеров в список и извлечения из этого списка, а не одной переменной, как это делается в этой реализации).

emit(Token)

Стандартный метод, вызываемый для автоматического выдачи маркера во внешнем лексическом правиле. Объект токена должен указывать на начало буфера символов. Остановить. Если в тексте есть переопределение текста, используйте его, чтобы задать текст маркера. Переопределите этот метод для создания пользовательских объектов Token или предоставления новой фабрики.

emitEOF()
getAllTokens()

Возвращает список всех объектов Token во входном потоке char. Принудительно загружает все маркеры. Не включает токен EOF.

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

Что такое заголовок ошибки, обычно это сведения о положении строк или символов?

getErrorListenerDispatch()
getErrorListeners()
getRuleIndexMap()

Получение сопоставления из имен правил с индексами правил. Используется для компиляции шаблонов XPath и дерева.

getTokenType(string)
getTokenTypeMap()

Получение сопоставления имен токенов с типами маркеров. Используется для компиляции шаблонов XPath и дерева.

mode(number)
more()
nextToken()

Возвращает токен из этого источника; т. е. соответствует токену в потоке char.

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

Lexers обычно может соответствовать любой символ в его словаре после сопоставления токена, так что сделать простую вещь и просто убить персонажа и надеяться, что все это работает. Вместо этого можно использовать стек вызова правила, чтобы выполнить сложное восстановление ошибок, если вы используете правило фрагмента.

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

Указать лексеру пропустить создание маркера для текущего правила лексера и найти другой маркер. NextToken() знает, что следует искать, когда правило лексера заканчивается с маркером, для SKIP_TOKEN. Помните, что если token==undefined в конце какого-либо правила маркера, он создает его и выдает его.

Сведения о конструкторе

LGTemplateLexer(CharStream)

new LGTemplateLexer(input: CharStream)

Параметры

input

CharStream

Сведения о свойстве

beginOfStructureProperty

beginOfStructureProperty: boolean = false

Значение свойства

boolean

beginOfTemplateBody

beginOfTemplateBody: boolean = true

Значение свойства

boolean

beginOfTemplateLine

beginOfTemplateLine: boolean = false

Значение свойства

boolean

CASE

public static CASE: 14 = 14

Значение свойства

14

channelNames

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

Значение свойства

string[]

channelNames

string[] channelNames

Значение свойства

string[]

COMMENTS

public static COMMENTS: 3 = 3

Значение свойства

3

DASH

public static DASH: 4 = 4

Значение свойства

4

DEFAULT

public static DEFAULT: 15 = 15

Значение свойства

15

ELSE

public static ELSE: 12 = 12

Значение свойства

12

ELSEIF

public static ELSEIF: 11 = 11

Значение свойства

11

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 16 = 16

Значение свойства

16

ESCAPE_CHARACTER_IN_STRUCTURE_BODY

public static ESCAPE_CHARACTER_IN_STRUCTURE_BODY: 31 = 31

Значение свойства

31

EXPRESSION

public static EXPRESSION: 17 = 17

Значение свойства

17

EXPRESSION_IN_STRUCTURE_BODY

public static EXPRESSION_IN_STRUCTURE_BODY: 32 = 32

Значение свойства

32

grammarFileName

string grammarFileName

Значение свойства

string

IF

public static IF: 10 = 10

Значение свойства

10

ignoreWS

ignoreWS: boolean = true

Значение свойства

boolean

inMultiline

inMultiline: boolean = false

Значение свойства

boolean

inStructuredValue

inStructuredValue: boolean = false

Значение свойства

boolean

INVALID_TOKEN

public static INVALID_TOKEN: 6 = 6

Значение свойства

6

LEFT_SQUARE_BRACKET

public static LEFT_SQUARE_BRACKET: 5 = 5

Значение свойства

5

modeNames

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

Значение свойства

string[]

modeNames

string[] modeNames

Значение свойства

string[]

MULTILINE_MODE

public static MULTILINE_MODE: 2 = 2

Значение свойства

2

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 8 = 8

Значение свойства

8

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 19 = 19

Значение свойства

19

NEWLINE

public static NEWLINE: 2 = 2

Значение свойства

2

NEWLINE_IN_BODY

public static NEWLINE_IN_BODY: 9 = 9

Значение свойства

9

NEWLINE_IN_STRUCTURE_NAME

public static NEWLINE_IN_STRUCTURE_NAME: 21 = 21

Значение свойства

21

NORMAL_TEMPLATE_BODY_MODE

public static NORMAL_TEMPLATE_BODY_MODE: 1 = 1

Значение свойства

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

Значение свойства

string[]

ruleNames

string[] ruleNames

Значение свойства

string[]

serializedATN

string serializedATN

Значение свойства

string

STRUCTURED_BODY_END

public static STRUCTURED_BODY_END: 27 = 27

Значение свойства

27

STRUCTURED_COMMENTS

public static STRUCTURED_COMMENTS: 24 = 24

Значение свойства

24

STRUCTURED_NEWLINE

public static STRUCTURED_NEWLINE: 26 = 26

Значение свойства

26

STRUCTURE_BODY_MODE

public static STRUCTURE_BODY_MODE: 4 = 4

Значение свойства

4

STRUCTURE_EQUALS

public static STRUCTURE_EQUALS: 29 = 29

Значение свойства

29

STRUCTURE_IDENTIFIER

public static STRUCTURE_IDENTIFIER: 28 = 28

Значение свойства

28

STRUCTURE_NAME

public static STRUCTURE_NAME: 22 = 22

Значение свойства

22

STRUCTURE_NAME_MODE

public static STRUCTURE_NAME_MODE: 3 = 3

Значение свойства

3

STRUCTURE_OR_MARK

public static STRUCTURE_OR_MARK: 30 = 30

Значение свойства

30

SWITCH

public static SWITCH: 13 = 13

Значение свойства

13

TEXT

public static TEXT: 18 = 18

Значение свойства

18

TEXT_IN_STRUCTURE_BODY

public static TEXT_IN_STRUCTURE_BODY: 33 = 33

Значение свойства

33

TEXT_IN_STRUCTURE_NAME

public static TEXT_IN_STRUCTURE_NAME: 23 = 23

Значение свойства

23

VOCABULARY

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

Значение свойства

Vocabulary

vocabulary

Vocabulary vocabulary

Значение свойства

Vocabulary

WS

public static WS: 1 = 1

Значение свойства

1

WS_IN_BODY

public static WS_IN_BODY: 7 = 7

Значение свойства

7

WS_IN_STRUCTURE_BODY

public static WS_IN_STRUCTURE_BODY: 25 = 25

Значение свойства

25

WS_IN_STRUCTURE_NAME

public static WS_IN_STRUCTURE_NAME: 20 = 20

Значение свойства

20

Сведения об унаследованном свойстве

atn

Возвращает объект , используемый serializedATN распознавательом для прогнозирования.

atn: ATN

Значение свойства

ATN

Наследуется от Recognizer.atn

channel

channel: number

Значение свойства

number

Наследуется от Lexer.channel

charIndex

Каков индекс текущего символа lookahead?

charIndex: number

Значение свойства

number

Наследуется от Lexer.charIndex

charPositionInLine

charPositionInLine: number

Значение свойства

number

Наследуется от Lexer.charPositionInLine

DEFAULT_MODE

static DEFAULT_MODE: number

Значение свойства

number

Наследуется от Lexer.DEFAULT_MODE

DEFAULT_TOKEN_CHANNEL

static DEFAULT_TOKEN_CHANNEL: number

Значение свойства

number

Наследуется от Lexer.DEFAULT_TOKEN_CHANNEL

EOF

static EOF: number

Значение свойства

number

Наследуется от Recognizer.EOF

HIDDEN

static HIDDEN: number

Значение свойства

number

Наследуется от Lexer.HIDDEN

inputStream

Установка потока символов и сброс лексера

inputStream: CharStream

Значение свойства

CharStream

Наследуется от Lexer.inputStream

interpreter

Задайте интерпретатор ATN, используемый распознавателем для прогнозирования.

interpreter: LexerATNSimulator

Значение свойства

LexerATNSimulator

Наследуется от Recognizer.interpreter

line

line: number

Значение свойства

number

Наследуется от Lexer.line

MAX_CHAR_VALUE

static MAX_CHAR_VALUE: number

Значение свойства

number

Наследуется от Lexer.MAX_CHAR_VALUE

MIN_CHAR_VALUE

static MIN_CHAR_VALUE: number

Значение свойства

number

Наследуется от Lexer.MIN_CHAR_VALUE

MORE

static MORE: number

Значение свойства

number

Наследуется от Lexer.MORE

parseInfo

Если выполняется профилирование во время parse/lex, будут возвращены записи DecisionInfo для каждого решения в распознавателье в объекте ParseInfo.

parseInfo: Promise<ParseInfo | undefined>

Значение свойства

Promise<ParseInfo | undefined>

Наследуется от Recognizer.parseInfo

SKIP

static SKIP: number

Значение свойства

number

Наследуется от Lexer.SKIP

sourceName

sourceName: string

Значение свойства

string

Наследуется от Lexer.sourceName

state

Укажите, что распознаватель изменил внутреннее состояние, согласующееся с переданным состоянием ATN. Таким образом, мы всегда знаем, где мы в ATN, как синтаксический анализатор идет вместе. Объекты контекста правила образуют стек, который позволяет нам видеть стек вызова правил. Объедините это, и у нас есть полные сведения о конфигурации ATN.

state: number

Значение свойства

number

Наследуется от Recognizer.state

text

Задайте полный текст этого токена; он очищает все предыдущие изменения в тексте.

text: string

Значение свойства

string

Наследуется от Lexer.text

token

Переопределение при создании нескольких маркеров.

token: Token | undefined

Значение свойства

Token | undefined

Наследуется от Lexer.token

tokenFactory

tokenFactory: TokenFactory

Значение свойства

TokenFactory

Наследуется от Lexer.tokenFactory

type

type: number

Значение свойства

number

Наследуется от Lexer.type

Сведения о методе

action(RuleContext, number, number)

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

Параметры

_localctx

RuleContext

ruleIndex

number

actionIndex

number

sempred(RuleContext, number, number)

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

Параметры

_localctx

RuleContext

ruleIndex

number

predIndex

number

Возвращаемое значение

boolean

Сведения о наследуемом методе

addErrorListener(ANTLRErrorListener<number>)

function addErrorListener(listener: ANTLRErrorListener<number>)

Параметры

listener

ANTLRErrorListener<number>

Наследуется от Recognizer.addErrorListener

emit()

По умолчанию не поддерживает несколько выдач для каждого вызова nextToken по соображениям эффективности. Подкласс и переопределите этот метод, nextToken и getToken (для отправки маркеров в список и извлечения из этого списка, а не одной переменной, как это делается в этой реализации).

function emit(): Token

Возвращаемое значение

Token

Наследуется от Lexer.emit

emit(Token)

Стандартный метод, вызываемый для автоматического выдачи маркера во внешнем лексическом правиле. Объект токена должен указывать на начало буфера символов. Остановить. Если в тексте есть переопределение текста, используйте его, чтобы задать текст маркера. Переопределите этот метод для создания пользовательских объектов Token или предоставления новой фабрики.

function emit(token: Token): Token

Параметры

token

Token

Возвращаемое значение

Token

Наследуется от Lexer.emit

emitEOF()

function emitEOF(): Token

Возвращаемое значение

Token

Наследуется от Lexer.emitEOF

getAllTokens()

Возвращает список всех объектов Token во входном потоке char. Принудительно загружает все маркеры. Не включает токен EOF.

function getAllTokens(): Token[]

Возвращаемое значение

Token[]

Наследуется от Lexer.getAllTokens

getCharErrorDisplay(number)

function getCharErrorDisplay(c: number): string

Параметры

c

number

Возвращаемое значение

string

Наследуется от Lexer.getCharErrorDisplay

getErrorDisplay(string | number)

function getErrorDisplay(s: string | number): string

Параметры

s

string | number

Возвращаемое значение

string

Наследуется от Lexer.getErrorDisplay

getErrorHeader(RecognitionException)

Что такое заголовок ошибки, обычно это сведения о положении строк или символов?

function getErrorHeader(e: RecognitionException): string

Параметры

e

RecognitionException

Возвращаемое значение

string

Наследуется от Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ANTLRErrorListener<number>

Возвращаемое значение

ANTLRErrorListener<number>

Наследуется от Recognizer.getErrorListenerDispatch

getErrorListeners()

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

Возвращаемое значение

Array<ANTLRErrorListener<number>>

Наследуется от Recognizer.getErrorListeners

getRuleIndexMap()

Получение сопоставления из имен правил с индексами правил. Используется для компиляции шаблонов XPath и дерева.

function getRuleIndexMap(): ReadonlyMap<string, number>

Возвращаемое значение

ReadonlyMap<string, number>

Наследуется от Recognizer.getRuleIndexMap

getTokenType(string)

function getTokenType(tokenName: string): number

Параметры

tokenName

string

Возвращаемое значение

number

Наследуется от Recognizer.getTokenType

getTokenTypeMap()

Получение сопоставления имен токенов с типами маркеров. Используется для компиляции шаблонов XPath и дерева.

function getTokenTypeMap(): ReadonlyMap<string, number>

Возвращаемое значение

ReadonlyMap<string, number>

Наследуется от Recognizer.getTokenTypeMap

mode(number)

function mode(m: number)

Параметры

m

number

Наследуется от Lexer.mode

more()

function more()

Наследуется от Lexer.more

nextToken()

Возвращает токен из этого источника; т. е. соответствует токену в потоке char.

function nextToken(): Token

Возвращаемое значение

Token

Наследуется от Lexer.nextToken

notifyListeners(LexerNoViableAltException)

function notifyListeners(e: LexerNoViableAltException)

Параметры

e

LexerNoViableAltException

Наследуется от Lexer.notifyListeners

popMode()

function popMode(): number

Возвращаемое значение

number

Наследуется от Lexer.popMode

precpred(RuleContext | undefined, number)

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

Параметры

localctx

RuleContext | undefined

precedence

number

Возвращаемое значение

boolean

Наследуется от Recognizer.precpred

pushMode(number)

function pushMode(m: number)

Параметры

m

number

Наследуется от Lexer.pushMode

recover(LexerNoViableAltException)

function recover(re: LexerNoViableAltException)

Параметры

re

LexerNoViableAltException

Наследуется от Lexer.recover

recover(RecognitionException)

Lexers обычно может соответствовать любой символ в его словаре после сопоставления токена, так что сделать простую вещь и просто убить персонажа и надеяться, что все это работает. Вместо этого можно использовать стек вызова правила, чтобы выполнить сложное восстановление ошибок, если вы используете правило фрагмента.

function recover(re: RecognitionException)

Параметры

re

RecognitionException

Наследуется от Lexer.recover

removeErrorListener(ANTLRErrorListener<number>)

function removeErrorListener(listener: ANTLRErrorListener<number>)

Параметры

listener

ANTLRErrorListener<number>

Наследуется от Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

Наследуется от Recognizer.removeErrorListeners

reset()

function reset()

Наследуется от Lexer.reset

reset(boolean)

function reset(resetInput: boolean)

Параметры

resetInput

boolean

Наследуется от Lexer.reset

skip()

Указать лексеру пропустить создание маркера для текущего правила лексера и найти другой маркер. NextToken() знает, что следует искать, когда правило лексера заканчивается с маркером, для SKIP_TOKEN. Помните, что если token==undefined в конце какого-либо правила маркера, он создает его и выдает его.

function skip()

Наследуется от Lexer.skip