function-definition
Ast Rule: function definition
function-definition
function visit(node, filename, code) {
const functionName = node.name.value;
const arguments = node.parameters;
console.log(functionName);
arguments.values.forEach((a) => {
console.log(`argument name: ${a.name.value}`);
if(a.type && a.type.astType === "string") {
console.log(`argument type: ${a.type.value}`);
}
});
if(functionName === "foo") {
const error = buildError(node.name.start.line, node.name.start.col,
node.name.end.line, node.name.end.col,
"Do not use foo as function name", "WARNING", "BEST_PRACTICE");
const edit = buildEditUpdate(node.name.start.line, node.name.start.col,
node.name.end.line, node.name.end.col,
"bar");
const fix = buildFix("use bar", [edit]);
addError(error.addFix(fix));
}
}
function-definition.ts
Expected test result: has error