本文整理汇总了TypeScript中abap-adt-api.ADTClient.mainInclude方法的典型用法代码示例。如果您正苦于以下问题:TypeScript ADTClient.mainInclude方法的具体用法?TypeScript ADTClient.mainInclude怎么用?TypeScript ADTClient.mainInclude使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类abap-adt-api.ADTClient
的用法示例。
在下文中一共展示了ADTClient.mainInclude方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getChildren
public async getChildren(
client: ADTClient
): Promise<AbapNodeComponentByCategory[]> {
if (this.isLeaf()) throw FileSystemError.FileNotADirectory(this.vsName)
if (!this.structure) await this.loadMetadata(client)
if (!this.structure) throw FileSystemError.FileNotFound(this.vsName)
const ns: NodeStructureMapped = {
categories: new Map(),
objectTypes: new Map(),
nodes: []
}
const main = this.selfLeafNode()
main.OBJECT_URI = ADTClient.mainInclude(this.structure)
const sources = ADTClient.classIncludes(this.structure)
this.structure.includes.forEach(i => {
const node = {
EXPANDABLE: "",
OBJECT_NAME: this.name + "." + i["class:includeType"],
OBJECT_TYPE: i["adtcore:type"],
OBJECT_URI: sources.get(i["class:includeType"] as classIncludes) || "",
OBJECT_VIT_URI: "",
TECH_NAME: i["class:includeType"] // bit of a hack, used to match include metadata
}
if (node.OBJECT_URI) {
if (i["abapsource:sourceUri"] === "source/main") ns.nodes.unshift(node)
else ns.nodes.push(node)
}
})
const aggregated = aggregateNodes(ns, this.type)
for (const cat of aggregated)
for (const type of cat.types)
for (const incl of type.objects)
if (isClassInclude(incl)) incl.setParent(this)
return aggregated
}