NormalTemplateStringContext class
- 扩展
-
ParserRuleContext
构造函数
Normal |
属性
rule |
继承属性
alt |
设置此上下文节点的外部备用编号。 默认实现不执行任何操作,以避免不需要它的树的后备字段开销。 使用后盾字段创建 ParserRuleContext 的子类,并设置选项 contextSuperClass。 @since 4.5.3 |
child |
|
children | 如果要为访问者调试或生成分析树,则需要跟踪与此规则上下文关联的所有令牌和规则调用。 这为空,用于分析 w/o 树 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。从这个意义上说,它并不是一个泛型复制函数。 如果在规则开始时执行错误同步(),我们可能会将错误节点添加到泛型 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 |
构造函数详细信息
NormalTemplateStringContext(ParserRuleContext | undefined, number)
new NormalTemplateStringContext(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
如果要为访问者调试或生成分析树,则需要跟踪与此规则上下文关联的所有令牌和规则调用。 这为空,用于分析 w/o 树 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
DASH()
function DASH(): TerminalNode
返回
TerminalNode
enterRule(LGTemplateParserListener)
ESCAPE_CHARACTER()
function ESCAPE_CHARACTER(): TerminalNode[]
返回
TerminalNode[]
ESCAPE_CHARACTER(number)
function ESCAPE_CHARACTER(i: number): TerminalNode
参数
- i
-
number
返回
TerminalNode
exitRule(LGTemplateParserListener)
expression()
expression(number)
MULTILINE_PREFIX()
function MULTILINE_PREFIX(): TerminalNode | undefined
返回
TerminalNode | undefined
MULTILINE_SUFFIX()
function MULTILINE_SUFFIX(): TerminalNode | undefined
返回
TerminalNode | undefined
TEXT()
function TEXT(): TerminalNode[]
返回
TerminalNode[]
TEXT(number)
function TEXT(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。从这个意义上说,它并不是一个泛型复制函数。
如果在规则开始时执行错误同步(),我们可能会将错误节点添加到泛型 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