本文整理匯總了TypeScript中basic/array.fold函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript fold函數的具體用法?TypeScript fold怎麽用?TypeScript fold使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了fold函數的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: fold
(result, value) => fold(
toArguments(value),
result,
(result, argument) => (
void tryAdd(result, argument, value),
result
)
)
示例2: lint
function lint(
projectFile: string,
shared: Shared,
configuration: Configs
): OneOfThree<Issue[], ts.Diagnostic[], Line<Severity>[]> {
const runners = toRunners(configuration);
if (bt.isLuck(runners)) {
const [configured, unconfigured] = partition<bm.Some<Runner<Shared>>, bm.None>(runners.luck, bm.isSome);
if (configured.length > 0) {
const linted = run(
projectFile,
shared,
insteadEach(configured, bm.someOf)
);
if (bt.isLuck(linted)) {
return firstFrom(linted.luck);
} else {
return secondFrom(linted.fuck);
}
} else {
return thirdFrom(
fold(
unconfigured,
[lineFrom(Severity.Info, 'There are no available rules.')],
(result, unconfigured) => append(result, lineFrom(Severity.Info, unconfigured.none))
)
);
}
} else {
return thirdFrom(
fold(
runners.fuck,
[lineFrom(Severity.Error, 'Unable to get runners ready.')],
(result, failure) => append(result, lineFrom(Severity.Error, failure))
)
);
}
}
示例3:
export function applyFileRule<Options, State, Shared>(
program: ts.Program,
options: Options,
rule: FileRule<Options, State, Shared>,
ruleKey: string,
shared: Shared
): Issue[] {
return rule.toIssues(
ba.fold(
program.getSourceFiles(),
rule.toState(program, options, shared),
(state, file) => rule.enforce(file, program.getTypeChecker(), state, options, ruleKey, shared)
),
options,
shared
);
}
示例4: viaTarget
(node, state) => {
if (isIdentifier(node)) {
const identifier = node;
state.issues = ba.fold(
state.checks,
state.issues,
(issues, rule) => viaTarget(
identifier,
rule.target,
identifier => rule.regex.test(identifier.text)
? bl.add(issues, issueFrom(node, rule.message, 'invalid-name'))
: issues,
() => issues
)
);
}
return state;
}