ErrorStructureLineContext class
- 扩展
-
ParserRuleContext
构造函数
Error |
属性
rule |
继承属性
alt |
设置此上下文节点的外部备用编号。 默认实现不会避免不需要它的树的后备字段开销。 使用支持字段创建 ParserRuleContext 的子类,并设置选项 contextSuperClass。 @since 4.5.3 |
child |
|
children | 如果要为访问者调试或生成分析树,则需要跟踪与此规则的上下文关联的所有令牌和规则调用。 对于使用树 constr 进行分析,此为空。 操作,因为我们不需要跟踪有关如何分析此规则的详细信息。 |
exception | 强制返回此规则的异常。 如果规则成功完成,则为 |
invoking |
|
is |
如果没有调用状态,则上下文为空;这意味着没有人调用当前上下文。 |
parent | |
payload | |
rule |
|
source |
|
start | 在此上下文中获取初始令牌。 请注意,从开始到停止的范围是包含的,因此对于不使用任何 (的规则,例如,零长度或错误生产) 此令牌可能会超过停止。 |
stop | 获取此上下文中的最终令牌。 请注意,从开始到停止的范围是包含的,因此对于不使用任何内容的规则 (例如,此令牌) 零长度或错误生产可能在启动之前。 |
text | 返回所有子节点的组合文本。 此方法仅考虑已添加到分析树的标记。 由于隐藏通道上的标记 (例如空格或注释) 未添加到分析树中,因此它们不会出现在此方法的输出中。 |
方法
继承的方法
add |
将分析树节点作为子节点添加到此。 适用于内部节点和叶节点。 不设置父链接;其他添加方法必须执行此操作。 其他 addChild 方法调用此 。 我们无法设置传入节点的父指针,因为现有接口没有 setParent () 方法,并且我不希望中断此方法的向后兼容性。 @since 4.7 |
add |
|
add |
添加令牌叶节点子节点,并强制其父节点成为此节点。 |
add |
根据 matchedToken 将子级添加到此节点。 它创建 TerminalNodeImpl,而不是使用 [Token) ] (xref:Parser%23createTerminalNode (ParserRuleContext%2C) 。 为了兼容,我保留此代码,但分析程序不再使用它。 |
add |
添加错误节点子节点,并强制其父节点成为此节点。 |
add |
根据 badToken 将子级添加到此节点。 它创建 ErrorNode,而不是使用 [Token) ] (xref:Parser%23createErrorNode (ParserRuleContext%2C) 。 为了兼容,我保留此代码,但分析程序不再使用它。 |
copy |
复制 ctx (我故意不使用复制构造函数) ,以避免与使用父节点创建混淆。 不复制子 (,除非错误离开) 。 这在生成的分析程序代码中用于将规则 X 的泛型 XContext 节点翻转为替换标签 Y 的 YContext。从这个意义上说,它并不是一个泛型复制函数。 如果在规则开头执行错误 sync () ,我们可能会将错误节点添加到泛型 XContext,因此此函数必须将这些节点复制到 YContext,否则它们将丢失! |
depth() | |
empty |
|
get |
|
get |
|
get |
|
get |
|
get |
|
get |
|
get |
|
remove |
由 enterOuterAlt 用来删除之前在输入规则时添加的 RuleContext。 如果有 # 标签,则需要删除泛型 ruleContext 对象。 |
set |
|
to |
在分析期间用于规则上下文信息调试,而不是用于 ATN 调试 |
to |
|
to |
|
to |
|
to |
|
to |
|
to |
|
to |
以 LISP 格式打印出整个树,而不仅仅是一个节点, (根 child1 。childN) 。 如果这是叶,则只打印一个节点。 我们必须知道识别器才能获取规则名称。 |
to |
以 LISP 格式打印出整个树,而不仅仅是一个节点, (根 child1 。childN) 。 如果这是叶,则只打印一个节点。 |
try |
|
try |
|
try |
构造函数详细信息
ErrorStructureLineContext(ParserRuleContext | undefined, number)
new ErrorStructureLineContext(parent: ParserRuleContext | undefined, invokingState: number)
参数
- parent
-
ParserRuleContext | undefined
- invokingState
-
number
属性详细信息
ruleIndex
number ruleIndex
属性值
number
继承属性详细信息
altNumber
设置此上下文节点的外部备用编号。 默认实现不会避免不需要它的树的后备字段开销。 使用支持字段创建 ParserRuleContext 的子类,并设置选项 contextSuperClass。 @since 4.5.3
altNumber: number
属性值
number
继承自 RuleContext.altNumber
childCount
childCount: number
属性值
number
继承自 ParserRuleContext.childCount
children
如果要为访问者调试或生成分析树,则需要跟踪与此规则的上下文关联的所有令牌和规则调用。 对于使用树 constr 进行分析,此为空。 操作,因为我们不需要跟踪有关如何分析此规则的详细信息。
children?: ParseTree[]
属性值
ParseTree[]
继承自 ParserRuleContext.children
exception
强制返回此规则的异常。 如果规则成功完成,则为 undefined
。
exception?: RecognitionException
属性值
RecognitionException
继承自 ParserRuleContext.exception
invokingState
invokingState: number
属性值
number
继承自 RuleContext.invokingState
isEmpty
如果没有调用状态,则上下文为空;这意味着没有人调用当前上下文。
isEmpty: boolean
属性值
boolean
继承自 RuleContext.isEmpty
parent
parent: ParserRuleContext | undefined
属性值
ParserRuleContext | undefined
继承自 ParserRuleContext.parent
payload
payload: RuleContext
属性值
RuleContext
继承自 RuleContext.payload
ruleContext
ruleContext: this
属性值
this
继承自 ParserRuleContext.ruleContext
sourceInterval
sourceInterval: Interval
属性值
Interval
继承自 ParserRuleContext.sourceInterval
start
在此上下文中获取初始令牌。 请注意,从开始到停止的范围是包含的,因此对于不使用任何 (的规则,例如,零长度或错误生产) 此令牌可能会超过停止。
start: Token
属性值
Token
继承自 ParserRuleContext.start
stop
获取此上下文中的最终令牌。 请注意,从开始到停止的范围是包含的,因此对于不使用任何内容的规则 (例如,此令牌) 零长度或错误生产可能在启动之前。
stop: Token | undefined
属性值
Token | undefined
继承自 ParserRuleContext.stop
text
返回所有子节点的组合文本。 此方法仅考虑已添加到分析树的标记。 由于隐藏通道上的标记 (例如空格或注释) 未添加到分析树中,因此它们不会出现在此方法的输出中。
text: string
属性值
string
继承自 RuleContext.text
方法详细信息
accept<Result>(LGTemplateParserVisitor<Result>)
function accept<Result>(visitor: LGTemplateParserVisitor<Result>): Result
参数
- visitor
-
LGTemplateParserVisitor<Result>
返回
Result
enterRule(LGTemplateParserListener)
ESCAPE_CHARACTER_IN_STRUCTURE_BODY()
function ESCAPE_CHARACTER_IN_STRUCTURE_BODY(): TerminalNode[]
返回
TerminalNode[]
ESCAPE_CHARACTER_IN_STRUCTURE_BODY(number)
function ESCAPE_CHARACTER_IN_STRUCTURE_BODY(i: number): TerminalNode
参数
- i
-
number
返回
TerminalNode
exitRule(LGTemplateParserListener)
expressionInStructure()
expressionInStructure(number)
function expressionInStructure(i: number): ExpressionInStructureContext
参数
- i
-
number
返回
STRUCTURE_EQUALS()
function STRUCTURE_EQUALS(): TerminalNode[]
返回
TerminalNode[]
STRUCTURE_EQUALS(number)
function STRUCTURE_EQUALS(i: number): TerminalNode
参数
- i
-
number
返回
TerminalNode
STRUCTURE_IDENTIFIER()
function STRUCTURE_IDENTIFIER(): TerminalNode[]
返回
TerminalNode[]
STRUCTURE_IDENTIFIER(number)
function STRUCTURE_IDENTIFIER(i: number): TerminalNode
参数
- i
-
number
返回
TerminalNode
STRUCTURE_OR_MARK()
function STRUCTURE_OR_MARK(): TerminalNode[]
返回
TerminalNode[]
STRUCTURE_OR_MARK(number)
function STRUCTURE_OR_MARK(i: number): TerminalNode
参数
- i
-
number
返回
TerminalNode
TEXT_IN_STRUCTURE_BODY()
function TEXT_IN_STRUCTURE_BODY(): TerminalNode[]
返回
TerminalNode[]
TEXT_IN_STRUCTURE_BODY(number)
function TEXT_IN_STRUCTURE_BODY(i: number): TerminalNode
参数
- i
-
number
返回
TerminalNode
继承的方法详细信息
addAnyChild<T>(T)
将分析树节点作为子节点添加到此。 适用于内部节点和叶节点。 不设置父链接;其他添加方法必须执行此操作。 其他 addChild 方法调用此 。 我们无法设置传入节点的父指针,因为现有接口没有 setParent () 方法,并且我不希望中断此方法的向后兼容性。
@since 4.7
function addAnyChild<T>(t: T): T
参数
- t
-
T
返回
T
继承自 ParserRuleContext.addAnyChild
addChild(RuleContext)
function addChild(ruleInvocation: RuleContext)
参数
- ruleInvocation
-
RuleContext
继承自 ParserRuleContext.addChild
addChild(TerminalNode)
添加令牌叶节点子节点,并强制其父节点成为此节点。
function addChild(t: TerminalNode)
参数
- t
-
TerminalNode
继承自 ParserRuleContext.addChild
addChild(Token)
警告
现已弃用此 API。
Use another overload instead.
根据 matchedToken 将子级添加到此节点。 它创建 TerminalNodeImpl,而不是使用 [Token) ] (xref:Parser%23createTerminalNode (ParserRuleContext%2C) 。 为了兼容,我保留此代码,但分析程序不再使用它。
function addChild(matchedToken: Token): TerminalNode
参数
- matchedToken
-
Token
返回
TerminalNode
继承自 ParserRuleContext.addChild
addErrorNode(ErrorNode)
添加错误节点子节点,并强制其父节点成为此节点。
function addErrorNode(errorNode: ErrorNode): ErrorNode
参数
- errorNode
-
ErrorNode
返回
ErrorNode
继承自 ParserRuleContext.addErrorNode
addErrorNode(Token)
警告
现已弃用此 API。
Use another overload instead.
根据 badToken 将子级添加到此节点。 它创建 ErrorNode,而不是使用 [Token) ] (xref:Parser%23createErrorNode (ParserRuleContext%2C) 。 为了兼容,我保留此代码,但分析程序不再使用它。
function addErrorNode(badToken: Token): ErrorNode
参数
- badToken
-
Token
返回
ErrorNode
继承自 ParserRuleContext.addErrorNode
copyFrom(ParserRuleContext)
复制 ctx (我故意不使用复制构造函数) ,以避免与使用父节点创建混淆。 不复制子 (,除非错误离开) 。 这在生成的分析程序代码中用于将规则 X 的泛型 XContext 节点翻转为替换标签 Y 的 YContext。从这个意义上说,它并不是一个泛型复制函数。
如果在规则开头执行错误 sync () ,我们可能会将错误节点添加到泛型 XContext,因此此函数必须将这些节点复制到 YContext,否则它们将丢失!
function copyFrom(ctx: ParserRuleContext)
参数
- ctx
-
ParserRuleContext
继承自 ParserRuleContext.copyFrom
depth()
function depth(): number
返回
number
继承自 RuleContext.depth
emptyContext()
static function emptyContext(): ParserRuleContext
返回
ParserRuleContext
继承自 ParserRuleContext.emptyContext
getChild(number)
function getChild(i: number): ParseTree
参数
- i
-
number
返回
ParseTree
继承自 ParserRuleContext.getChild
getChild<T>(number, { })
function getChild<T>(i: number, ctxType: { }): T
参数
- i
-
number
- ctxType
-
{ }
返回
T
继承自 ParserRuleContext.getChild
getChildContext(RuleContext, number)
static function getChildContext(parent: RuleContext, invokingState: number): RuleContext
参数
- parent
-
RuleContext
- invokingState
-
number
返回
RuleContext
继承自 RuleContext.getChildContext
getRuleContext<T>(number, { })
function getRuleContext<T>(i: number, ctxType: { }): T
参数
- i
-
number
- ctxType
-
{ }
返回
T
继承自 ParserRuleContext.getRuleContext
getRuleContexts<T>({ })
function getRuleContexts<T>(ctxType: { }): T[]
参数
- ctxType
-
{ }
返回
T[]
继承自 ParserRuleContext.getRuleContexts
getToken(number, number)
function getToken(ttype: number, i: number): TerminalNode
参数
- ttype
-
number
- i
-
number
返回
TerminalNode
继承自 ParserRuleContext.getToken
getTokens(number)
function getTokens(ttype: number): TerminalNode[]
参数
- ttype
-
number
返回
TerminalNode[]
继承自 ParserRuleContext.getTokens
removeLastChild()
由 enterOuterAlt 用来删除之前在输入规则时添加的 RuleContext。 如果有 # 标签,则需要删除泛型 ruleContext 对象。
function removeLastChild()
继承自 ParserRuleContext.removeLastChild
setParent(RuleContext)
function setParent(parent: RuleContext)
参数
- parent
-
RuleContext
继承自 RuleContext.setParent
toInfoString(Parser)
在分析期间用于规则上下文信息调试,而不是用于 ATN 调试
function toInfoString(recognizer: Parser): string
参数
- recognizer
-
Parser
返回
string
继承自 ParserRuleContext.toInfoString
toString()
function toString(): string
返回
string
继承自 RuleContext.toString
toString(Recognizer<any, any> | undefined)
function toString(recog: Recognizer<any, any> | undefined): string
参数
- recog
-
Recognizer<any, any> | undefined
返回
string
继承自 RuleContext.toString
toString(Recognizer<any, any> | undefined, RuleContext | undefined)
function toString(recog: Recognizer<any, any> | undefined, stop: RuleContext | undefined): string
参数
- recog
-
Recognizer<any, any> | undefined
- stop
-
RuleContext | undefined
返回
string
继承自 RuleContext.toString
toString(string[] | undefined)
function toString(ruleNames: string[] | undefined): string
参数
- ruleNames
-
string[] | undefined
返回
string
继承自 RuleContext.toString
toString(string[] | undefined, RuleContext | undefined)
function toString(ruleNames: string[] | undefined, stop: RuleContext | undefined): string
参数
- ruleNames
-
string[] | undefined
- stop
-
RuleContext | undefined
返回
string
继承自 RuleContext.toString
toStringTree()
function toStringTree(): string
返回
string
继承自 RuleContext.toStringTree
toStringTree(Parser)
以 LISP 格式打印出整个树,而不仅仅是一个节点, (根 child1 。childN) 。 如果这是叶,则只打印一个节点。 我们必须知道识别器才能获取规则名称。
function toStringTree(recog: Parser): string
参数
- recog
-
Parser
返回
string
继承自 RuleContext.toStringTree
toStringTree(string[] | undefined)
以 LISP 格式打印出整个树,而不仅仅是一个节点, (根 child1 。childN) 。 如果这是叶,则只打印一个节点。
function toStringTree(ruleNames: string[] | undefined): string
参数
- ruleNames
-
string[] | undefined
返回
string
继承自 RuleContext.toStringTree
tryGetChild<T>(number, { })
function tryGetChild<T>(i: number, ctxType: { }): T | undefined
参数
- i
-
number
- ctxType
-
{ }
返回
T | undefined
继承自 ParserRuleContext.tryGetChild
tryGetRuleContext<T>(number, { })
function tryGetRuleContext<T>(i: number, ctxType: { }): T | undefined
参数
- i
-
number
- ctxType
-
{ }
返回
T | undefined
继承自 ParserRuleContext.tryGetRuleContext
tryGetToken(number, number)
function tryGetToken(ttype: number, i: number): TerminalNode | undefined
参数
- ttype
-
number
- i
-
number
返回
TerminalNode | undefined
继承自 ParserRuleContext.tryGetToken