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


LGFileLexer class

Extends

Lexer

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

LGFileLexer(CharStream)

Свойства

channelNames
channelNames
COMMENT
ESCAPE_CHARACTER
grammarFileName
IMPORT
INLINE_MULTILINE
INVALID_LINE
modeNames
modeNames
MULTILINE_MODE
MULTILINE_PREFIX
MULTILINE_SUFFIX
MULTILINE_TEXT
NEWLINE
OPTION
ruleNames
ruleNames
serializedATN
startTemplate
TEMPLATE_BODY
TEMPLATE_NAME_LINE
VOCABULARY
vocabulary

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

atn

Получение serializedATN, используемой распознавательом для прогнозирования.

channel
charIndex

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

charPositionInLine
DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
EOF
HIDDEN
inputStream

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

interpreter

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

line
MAX_CHAR_VALUE
MIN_CHAR_VALUE
MORE
parseInfo

Если профилирование во время синтаксического анализа или 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)

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

emitEOF()
getAllTokens()

Возвращает список всех объектов токенов во входном потоке 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)

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

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

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

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

LGFileLexer(CharStream)

new LGFileLexer(input: CharStream)

Параметры

input

CharStream

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

channelNames

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

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

string[]

channelNames

string[] channelNames

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

string[]

COMMENT

public static COMMENT: 3 = 3

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

3

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 11 = 11

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

11

grammarFileName

string grammarFileName

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

string

IMPORT

public static IMPORT: 4 = 4

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

4

INLINE_MULTILINE

public static INLINE_MULTILINE: 6 = 6

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

6

INVALID_LINE

public static INVALID_LINE: 9 = 9

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

9

modeNames

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

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

string[]

modeNames

string[] modeNames

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

string[]

MULTILINE_MODE

public static MULTILINE_MODE: 1 = 1

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

1

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 7 = 7

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

7

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 10 = 10

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

10

MULTILINE_TEXT

public static MULTILINE_TEXT: 12 = 12

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

12

NEWLINE

public static NEWLINE: 1 = 1

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

1

OPTION

public static OPTION: 2 = 2

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

2

ruleNames

public static ruleNames: string[] = [
		"WHITESPACE", "NEWLINE", "OPTION", "COMMENT", "IMPORT", "TEMPLATE_NAME_LINE", 
		"INLINE_MULTILINE", "MULTILINE_PREFIX", "TEMPLATE_BODY", "INVALID_LINE", 
		"MULTILINE_SUFFIX", "ESCAPE_CHARACTER", "MULTILINE_TEXT",
	]

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

string[]

ruleNames

string[] ruleNames

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

string[]

serializedATN

string serializedATN

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

string

startTemplate

startTemplate: boolean = false

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

boolean

TEMPLATE_BODY

public static TEMPLATE_BODY: 8 = 8

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

8

TEMPLATE_NAME_LINE

public static TEMPLATE_NAME_LINE: 5 = 5

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

5

VOCABULARY

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

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

Vocabulary

vocabulary

Vocabulary vocabulary

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

Vocabulary

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

atn

Получение serializedATN, используемой распознавательом для прогнозирования.

atn: ATN

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

ATN

наследуется от распознавателя.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

унаследован от распознавателя.EOF

HIDDEN

static HIDDEN: number

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

number

унаследован от Lexer.HIDDEN

inputStream

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

inputStream: CharStream

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

CharStream

унаследовано от Лексера.inputStream

interpreter

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

interpreter: LexerATNSimulator

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

LexerATNSimulator

унаследован от Распознаватель.интерпретатор

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

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

parseInfo: Promise<ParseInfo | undefined>

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

Promise<ParseInfo | undefined>

наследуется от распознавателя.parseInfo

SKIP

static SKIP: number

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

number

унаследовано от Lexer.SKIP

sourceName

sourceName: string

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

string

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

state

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

state: number

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

number

унаследован от Распознавателя.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>

Наследуется от Распознавателя.addErrorListener

emit()

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

function emit(): Token

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

Token

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

emit(Token)

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

function emit(token: Token): Token

Параметры

token

Token

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

Token

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

emitEOF()

function emitEOF(): Token

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

Token

унаследован от Lexer.emitEOF

getAllTokens()

Возвращает список всех объектов токенов во входном потоке 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

наследуется от распознавателя.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ANTLRErrorListener<number>

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

ANTLRErrorListener<number>

наследуется от Распознавателя.getErrorListenerDispatch

getErrorListeners()

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

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

Array<ANTLRErrorListener<number>>

наследуется от Распознавателя.getErrorListeners

getRuleIndexMap()

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

function getRuleIndexMap(): ReadonlyMap<string, number>

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

ReadonlyMap<string, number>

наследуется от распознавателя.getRuleIndexMap

getTokenType(string)

function getTokenType(tokenName: string): number

Параметры

tokenName

string

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

number

наследуется от распознавателя.getTokenType

getTokenTypeMap()

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

function getTokenTypeMap(): ReadonlyMap<string, number>

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

ReadonlyMap<string, number>

наследуется от распознавателя.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

наследуется от Распознавателя.precpred

pushMode(number)

function pushMode(m: number)

Параметры

m

number

унаследовано от Lexer.pushMode

recover(LexerNoViableAltException)

function recover(re: LexerNoViableAltException)

Параметры

re

LexerNoViableAltException

унаследовано от Lexer.recover

recover(RecognitionException)

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

function recover(re: RecognitionException)

Параметры

re

RecognitionException

унаследовано от Lexer.recover

removeErrorListener(ANTLRErrorListener<number>)

function removeErrorListener(listener: ANTLRErrorListener<number>)

Параметры

listener

ANTLRErrorListener<number>

наследуется от Распознаватель.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

наследуется от Распознавателя.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