当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript villa.call函数代码示例

本文整理汇总了TypeScript中villa.call函数的典型用法代码示例。如果您正苦于以下问题:TypeScript call函数的具体用法?TypeScript call怎么用?TypeScript call使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了call函数的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: generate

  async generate(): Promise<ClimeCLITestCase[]> {
    let caseNames = await v.call(glob, '*/case-*/', {
      cwd: __dirname,
    });

    return caseNames
      .map(caseName => {
        if (!/-\d+\/$/.test(caseName)) {
          throw new Error(
            `Expecting numeric suffix for case name "${caseName}"`,
          );
        }

        let caseDir = Path.join(__dirname, caseName);
        let subcases = require(Path.join(caseDir, 'subcases'))
          .default as SubcaseDefinition[];

        return subcases.map(subcase => {
          return new ClimeCLITestCase(
            `${caseName}${subcase.name}`,
            [Path.join(caseDir, 'cli.js')].concat(subcase.args),
          );
        });
      })
      .reduce((result, cases) => result.concat(cases), []);
  }
开发者ID:vilic,项目名称:clime,代码行数:26,代码来源:cli-test.ts

示例2: exists

  async exists(extensions?: string[]): Promise<boolean | string | undefined> {
    let extensionsSpecified = !!extensions;

    for (let extension of extensions || ['']) {
      let path = this.fullName + extension;
      let stats = await v.call(FS.stat, path).catch(v.bear);

      if (stats && stats.isFile()) {
        return extensionsSpecified ? path : true;
      }
    }

    return extensionsSpecified ? undefined : false;
  }
开发者ID:vilic,项目名称:clime,代码行数:14,代码来源:fs.ts

示例3: assert

  async assert(exists = true): Promise<void> {
    let stats = await v.call(FS.stat, this.fullName).catch(v.bear);

    if (exists) {
      if (!stats) {
        throw new ExpectedError(`File "${this.source}" does not exist`);
      }

      if (!stats.isFile()) {
        throw new ExpectedError(
          `Object "${this.source}" is expected to be a file`,
        );
      }
    } else if (stats) {
      throw new ExpectedError(`Object "${this.source}" already exists`);
    }
  }
开发者ID:vilic,项目名称:clime,代码行数:17,代码来源:fs.ts

示例4: generate

    async generate(): Promise<void> {
        let project = this.project;

        let { name, version } = project;

        let artifacts: ArtifactMetadataItem[] = [];

        let metadata: ArtifactMetadata = {
            name,
            version,
            artifacts
        };

        let defaultIdPlugin: Plugin | undefined;

        for (let plugin of project.plugins) {
            if (plugin.processArtifactMetadata) {
                await plugin.processArtifactMetadata(metadata);
            }

            if (plugin.getDefaultArtifactId) {
                defaultIdPlugin = plugin;
            }
        }

        for (let platform of project.platforms) {
            console.log();
            console.log(
                project.platformSpecified ?
                    `Generating artifact of project ${Style.id(name)} ${Style.dim(`(${platform.name})`)}...` :
                    `Generating artifact of project ${Style.id(name)}...`
            );
            console.log();

            let idTemplate = this.config.id || (
                defaultIdPlugin ?
                    await defaultIdPlugin.getDefaultArtifactId!(project.platformSpecified ? platform : undefined) :
                    (project.platformSpecified ? '{name}-{platform}' : '{name}')
            );

            let id = project.renderTemplate(idTemplate, {
                platform: project.platformSpecified ? platform.name : undefined
            });

            let archiver = Archiver.create('zip', {});

            let mappings = this
                .mappings
                .filter(mapping => !mapping.platformSet || mapping.platformSet.has(platform.name));

            await this.walk(mappings, platform, archiver);

            archiver.finalize();

            let path = Path.join(project.distDir, `${id}.zip`);

            let writeStream = FS.createWriteStream(path);

            archiver.pipe(writeStream);

            await awaitable(writeStream, 'close', [archiver]);

            console.log();
            console.log(`Artifact generated at path ${Style.path(path)}.`);

            artifacts.push({
                id,
                platform: project.platformSpecified ? platform.name : undefined,
                path: Path.relative(project.distDir, path)
            });
        }

        let metadataFilePath = Path.join(project.distDir, `${name}.json`);
        let metadataJSON = JSON.stringify(metadata, undefined, 4);

        await acall<void>(FS.writeFile, metadataFilePath, metadataJSON);

        console.log();
        console.log(`Artifact metadata generated at path ${Style.path(metadataFilePath)}.`);
    }
开发者ID:vilic,项目名称:henge,代码行数:80,代码来源:artifact.ts

示例5: safeStat

export async function safeStat(path: string): Promise<FS.Stats | undefined> {
  return v.call(FS.stat, path).catch(v.bear);
}
开发者ID:vilic,项目名称:clime,代码行数:3,代码来源:fs.ts

示例6: text

 async text(encoding = 'utf-8'): Promise<string> {
   await this.assert();
   return v.call<string>(FS.readFile, this.fullName, encoding);
 }
开发者ID:vilic,项目名称:clime,代码行数:4,代码来源:fs.ts

示例7: buffer

 async buffer(): Promise<Buffer> {
   await this.assert();
   return v.call<Buffer>(FS.readFile, this.fullName);
 }
开发者ID:vilic,项目名称:clime,代码行数:4,代码来源:fs.ts


注:本文中的villa.call函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。