Templates class

LG 入口,包括 LG 文件具有的属性,以及评估函数。

构造函数

Templates(Template[], TemplateImport[], Diagnostic[], Templates[], string, string, ExpressionParser, ImportResolverDelegate, string[], string, Record<string, Templates>)

创建 Templates 类的新实例。

属性

allDiagnostics

从当前 lg 文件和引用 lg 文件获取所有诊断。

allTemplates

从当前 lg 文件获取所有模板并引用 lg 文件。

content

LG 内容。

diagnostics

诊断。

enableFromFile

指示 LG 模板中是否允许 fromFile。

expressionParser

表达式分析器。

id

lg 资源的 ID。

importResolver

解析导入 lg 文件的资源 ID 的委托。

imports

导入此 LG 文件包含的元素。

inlineTemplateIdPrefix

内联内容的临时模板 ID。

lgOptions

获取当前 LG 文件的逐出选项。 @returns 一个值,该值指示评估 LG 模板时的选项。

namedReferences

从导入别名映射到模板。

namespace

获取要注册当前 LG 文件的命名空间。 @returns 表示要注册当前 LG 文件的命名空间的字符串值。

options

LG 文件选项。

references

此 LG 文件包含的所有引用都来自 Imports otice:引用不包括 lg 文件中的所有子导入,而不仅仅是子级直接属于此 lgfile。 因此,引用计数可能 >= 导入计数。

source

lg 资源的源。 lg 文件的完整路径。

方法

addTemplate(string, string[], string)

添加新模板并返回 LG 文件。

analyzeTemplate(string, AnalyzerOptions)

分析模板以获取静态分析器结果,包括变量和模板引用。

deleteTemplate(string)

删除现有模板。

evaluate(string, object, EvaluationOptions)

评估具有给定名称和范围的模板。

evaluateText(string, object, EvaluationOptions)

用于评估内联模板 str。

expandTemplate(string, object, EvaluationOptions)

展开具有给定名称和范围的模板。 返回所有可能的响应,而不是随机响应。

parseFile(string, ImportResolverDelegate, ExpressionParser)

分析文件并返回 LG 文件。

parseResource(LGResource, ImportResolverDelegate, ExpressionParser)

分析器将 lg 内容转换为模板。

parseText(string, string, ImportResolverDelegate, ExpressionParser)

分析器将 lg 内容转换为模板。

push(Template[])

向集合追加 1 个或多个模板。

toArray()

获取模板的集合。

toString()

返回 模板 内容的字符串表示形式。

updateTemplate(string, string, string[], string)

更新模板并返回 LG 文件。

构造函数详细信息

Templates(Template[], TemplateImport[], Diagnostic[], Templates[], string, string, ExpressionParser, ImportResolverDelegate, string[], string, Record<string, Templates>)

创建 Templates 类的新实例。

new Templates(items?: Template[], imports?: TemplateImport[], diagnostics?: Diagnostic[], references?: Templates[], content?: string, id?: string, expressionParser?: ExpressionParser, importResolverDelegate?: ImportResolverDelegate, options?: string[], source?: string, namedReferences?: Record<string, Templates>)

参数

items

Template[]

自选。 模板 实例的列表。

imports

TemplateImport[]

自选。 TemplateImport 实例的列表。

diagnostics

Diagnostic[]

自选。 诊断 实例 列表。

references

Templates[]

自选。 模板 实例的列表。

content

string

自选。 当前模板实例的内容。

id

string

自选。 当前模板实例的 ID。

expressionParser

ExpressionParser

自选。 ExpressionParser 分析内容中的表达式。

importResolverDelegate
ImportResolverDelegate

自选。 解析程序将 LG 导入 ID 解析为模板文本。

options

string[]

自选。 表示模板评估期间选项的字符串列表。

source

string

自选。 模板源。

namedReferences

Record<string, Templates>

自选。 使用“as”语法导入的推理,例如:导入 作为 myAlias。

属性详细信息

allDiagnostics

从当前 lg 文件和引用 lg 文件获取所有诊断。

Diagnostic[] allDiagnostics

属性值

来自当前 lg 文件和引用 lg 文件的所有诊断。

allTemplates

从当前 lg 文件获取所有模板并引用 lg 文件。

Template[] allTemplates

属性值

当前 lg 文件中的所有模板和引用 lg 文件。

content

LG 内容。

content: string

属性值

string

diagnostics

诊断。

diagnostics: Diagnostic[]

属性值

enableFromFile

指示 LG 模板中是否允许 fromFile。

static enableFromFile: boolean = false

属性值

boolean

expressionParser

表达式分析器。

expressionParser: ExpressionParser

属性值

ExpressionParser

id

lg 资源的 ID。

id: string

属性值

string

importResolver

解析导入 lg 文件的资源 ID 的委托。

importResolver: ImportResolverDelegate

属性值

imports

导入此 LG 文件包含的元素。

imports: TemplateImport[]

属性值

inlineTemplateIdPrefix

内联内容的临时模板 ID。

static inlineTemplateIdPrefix: string = "__temp__"

属性值

string

lgOptions

获取当前 LG 文件的逐出选项。 @returns 一个值,该值指示评估 LG 模板时的选项。

EvaluationOptions lgOptions

属性值

namedReferences

从导入别名映射到模板。

namedReferences: Record<string, Templates>

属性值

Record<string, Templates>

namespace

获取要注册当前 LG 文件的命名空间。 @returns 表示要注册当前 LG 文件的命名空间的字符串值。

string namespace

属性值

string

options

LG 文件选项。

options: string[]

属性值

string[]

references

此 LG 文件包含的所有引用都来自 Imports otice:引用不包括 lg 文件中的所有子导入,而不仅仅是子级直接属于此 lgfile。 因此,引用计数可能 >= 导入计数。

references: Templates[]

属性值

source

lg 资源的源。 lg 文件的完整路径。

source: string

属性值

string

方法详细信息

addTemplate(string, string[], string)

添加新模板并返回 LG 文件。

function addTemplate(templateName: string, parameters: string[], templateBody: string): Templates

参数

templateName

string

新模板名称。

parameters

string[]

新参数。

templateBody

string

新的模板正文。

返回

新建 lg 文件。

analyzeTemplate(string, AnalyzerOptions)

分析模板以获取静态分析器结果,包括变量和模板引用。

function analyzeTemplate(templateName: string, analyzerOptions?: AnalyzerOptions): AnalyzerResult

参数

templateName

string

要评估的模板名称。

analyzerOptions
AnalyzerOptions

用于分析模板的选项。

返回

分析器结果。

deleteTemplate(string)

删除现有模板。

function deleteTemplate(templateName: string): Templates

参数

templateName

string

应删除哪个模板。

返回

返回新的 lg 文件。

evaluate(string, object, EvaluationOptions)

评估具有给定名称和范围的模板。

function evaluate(templateName: string, scope?: object, opt: EvaluationOptions): any

参数

templateName

string

要评估的模板名称。

scope

object

计算中可见的状态。

opt
EvaluationOptions

评估模板中的 EvaluationOptions。

返回

any

评估结果。

evaluateText(string, object, EvaluationOptions)

用于评估内联模板 str。

function evaluateText(inlineStr: string, scope?: object, opt: EvaluationOptions): any

参数

inlineStr

string

将计算的内联字符串。

scope

object

Scope 对象或 JToken。

opt
EvaluationOptions

评估模板中的 EvaluationOptions。

返回

any

评估的结果对象。

expandTemplate(string, object, EvaluationOptions)

展开具有给定名称和范围的模板。 返回所有可能的响应,而不是随机响应。

function expandTemplate(templateName: string, scope?: object, opt: EvaluationOptions): any[]

参数

templateName

string

要评估的模板名称。

scope

object

计算中可见的状态。

opt
EvaluationOptions

扩展模板中的 EvaluationOptions。

返回

any[]

展开结果。

parseFile(string, ImportResolverDelegate, ExpressionParser)

分析文件并返回 LG 文件。

static function parseFile(filePath: string, importResolver?: ImportResolverDelegate, expressionParser?: ExpressionParser): Templates

参数

filePath

string

LG 绝对文件路径。

importResolver
ImportResolverDelegate

解析程序将 LG 导入 ID 解析为模板文本。

expressionParser

ExpressionParser

用于计算表达式的表达式分析器。

返回

新建 lg 文件。

parseResource(LGResource, ImportResolverDelegate, ExpressionParser)

分析器将 lg 内容转换为模板。

static function parseResource(resource: LGResource, importResolver?: ImportResolverDelegate, expressionParser?: ExpressionParser): Templates

参数

resource
LGResource

LG 资源。

importResolver
ImportResolverDelegate

解析程序将 LG 导入 ID 解析为模板文本。

expressionParser

ExpressionParser

用于计算表达式的表达式分析器。

返回

实体。

parseText(string, string, ImportResolverDelegate, ExpressionParser)

警告

现已弃用此 API。

This method will soon be deprecated. Use ParseResource instead.

分析器将 lg 内容转换为模板。

static function parseText(content: string, id: string, importResolver?: ImportResolverDelegate, expressionParser?: ExpressionParser): Templates

参数

content

string

文本内容包含 lg 模板。

id

string

ID 是内容的标识符。 如果未定义 importResolver,则 ID 必须是完整路径字符串。

importResolver
ImportResolverDelegate

解析程序将 LG 导入 ID 解析为模板文本。

expressionParser

ExpressionParser

用于计算表达式的表达式分析器。

返回

实体。

push(Template[])

向集合追加 1 个或多个模板。

function push(args: Template[])

参数

args

Template[]

要添加的模板列表。

toArray()

获取模板的集合。

function toArray(): Template[]

返回

对集合模板内部列表的引用。

toString()

返回 模板 内容的字符串表示形式。

function toString(): string

返回

string

模板 内容的字符串表示形式。

updateTemplate(string, string, string[], string)

更新模板并返回 LG 文件。

function updateTemplate(templateName: string, newTemplateName: string, parameters: string[], templateBody: string): Templates

参数

templateName

string

Orignial 模板名称。

newTemplateName

string

新模板名称。

parameters

string[]

新参数。

templateBody

string

新的模板正文。

返回

新建 lg 文件。