本文整理汇总了TypeScript中tslint.Linter.createProgram方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Linter.createProgram方法的具体用法?TypeScript Linter.createProgram怎么用?TypeScript Linter.createProgram使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类tslint.Linter
的用法示例。
在下文中一共展示了Linter.createProgram方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: lint
function lint(dir: string): void {
const options = {
rulesDirectory: join(paths.base_dir, "tslint", "rules"),
formatter: "stylish",
fix: argv.fix || false,
}
const program = Linter.createProgram(join(dir, "tsconfig.json"))
const linter = new Linter(options, program)
const files = Linter.getFileNames(program)
for (const file of files) {
const config = Configuration.findConfiguration("./tslint.json", file).results
const contents = program.getSourceFile(file)!.getFullText()
linter.lint(file, contents, config)
}
const result = linter.getResult()
if (result.errorCount != 0) {
for (const line of result.output.trim().split("\n"))
log(line)
if (argv.emitError)
process.exit(1)
}
}
示例2: lint
export default function lint() {
const program = tslint.Linter.createProgram("./tsconfig.json");
return gulp.src([project.transpiler.source])
.pipe(gulpTsLint({
tslint: tslint,
formatter: 'prose',
program: program
}))
.pipe(gulpTsLint.report());
}
示例3: runTSLint
/** Runs TSLint with the no-template-variable TSLint rule.*/
function runTSLint() {
const program = Linter.createProgram(join(tmpDir, 'tsconfig.json'));
const linter = new Linter({fix: false, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile(
{rules: {'no-template-variable-assignment': true}, linterOptions: {typeCheck: true}});
program.getRootFileNames().forEach(fileName => {
linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config);
});
return linter;
}
示例4: runTSLint
/**
* Runs TSLint with the static-query timing TSLint rule. By default the rule fixes
* are automatically applied.
*/
function runTSLint(fix = true) {
const program = Linter.createProgram(join(tmpDir, 'tsconfig.json'));
const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile(
{rules: {'explicit-query-timing': true}, linterOptions: {typeCheck: true}});
program.getRootFileNames().forEach(fileName => {
linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config);
});
return linter;
}
示例5: tslintAsync
export async function tslintAsync() {
const program = Linter.createProgram('tsconfig.json');
const linter = new Linter(lintOptions, program);
// note: normally dependencies aren't part of your source files, but if you
// import a file from a dependency (e.g. `import "cool-package/foo"`) this
// will be in your files array â that's why we need `.filter(isSourceFile)`
const files = Linter.getFileNames(program).filter(isSourceFile);
files.forEach(file => {
const fileContents = program.getSourceFile(file).getFullText();
const conf = Configuration.findConfiguration(configPath, file).results;
linter.lint(file, fileContents, conf);
});
const result = linter.getResult();
const errors = result.output;
const errorsCount = result.errorCount;
const fixedFiles = uniq((result.fixes || []).map(({ fileName }) => fileName));
return { errors, errorsCount, fixedFiles };
}
示例6: taskTslint
/**
* Runs TSLint on source files.
*/
export default function taskTslint(settings: IGulpSettings): any {
"use strict";
const gulpTslint = require("gulp-tslint");
const tslint = require("tslint");
const program = tslint.Linter.createProgram(Constants.files.src.tsconfig);
return settings.gulp
.src(
[
`${Constants.folders.src}/**/*.ts`,
`!${Constants.folders.src}/**/*.d.ts`
],
{
base: "."
})
.pipe(gulpTslint({
formatter: "verbose",
program
}))
.pipe(gulpTslint.report());
}