本文整理汇总了TypeScript中@babel/types.numericLiteral函数的典型用法代码示例。如果您正苦于以下问题:TypeScript numericLiteral函数的具体用法?TypeScript numericLiteral怎么用?TypeScript numericLiteral使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了numericLiteral函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: BinaryExpression
const node = path.node;
if (t.isIdentifier(node) && node.name === "n") {
node.name = "x";
}
}
});
// Examples from https://github.com/thejameskyle/babel-handbook/blob/master/translations/en/plugin-handbook.md#writing-your-first-babel-plugin
const v1: Visitor = {
BinaryExpression(path) {
if (t.isIdentifier(path.node.left)) {
// ...
}
path.replaceWith(
t.binaryExpression("**", path.node.left, t.numericLiteral(2))
);
path.parentPath.replaceWith(
t.expressionStatement(t.stringLiteral("Anyway the wind blows, doesn't really matter to me, to me."))
);
path.parentPath.remove();
},
Identifier(path) {
if (path.isReferencedIdentifier()) {
// ...
}
if (t.isQualifiedTypeIdentifier(path.node, path.parent)) {
// ...
}
},
示例2: if
path.node.params.forEach((param, i) => {
if (param.type === "ObjectPattern") {
// do nothing for now, logic is in objectpattern visitor
// for (var n = 0; n < param.properties.length; n++) {
// const prop = param.properties[n];
// declarators.push(
// t.variableDeclarator(
// addLoc(
// getTrackingIdentifier(
// prop.value ? prop.value.name : prop.key.name
// ),
// prop.loc
// ),
// t.nullLiteral()
// )
// );
// }
} else if (param.type === "ArrayPattern") {
param.elements.forEach(elem => {
let varName;
if (elem.type === "Identifier") {
varName = elem.name;
} else if (elem.type === "AssignmentPattern") {
varName = elem.left.name;
} else if (elem.type === "RestParameter") {
varName = elem.argument.name;
} else if (elem.type === "ObjectPattern") {
// will be processed in ObjectPattern visitor
} else {
throw Error("aaa unknown array pattern elem type " + elem.type);
}
declarators.push(
t.variableDeclarator(
addLoc(getTrackingIdentifier(varName), param.loc),
ignoredCallExpression(FunctionNames.getEmptyTrackingInfo, [
ignoredStringLiteral("arrayPatternInFunction"),
getLocObjectASTNode(elem.loc)
])
)
);
});
} else if (param.type === "AssignmentPattern") {
let varName = param.left.name;
declarators.push(
t.variableDeclarator(
addLoc(getTrackingIdentifier(varName), param.loc),
ignoredCallExpression(FunctionNames.getEmptyTrackingInfo, [
ignoredStringLiteral("arrayPatternInFunction"),
getLocObjectASTNode(param.loc)
])
)
);
} else if (param.type === "RestElement") {
let varName = param.argument.name;
declarators.push(
t.variableDeclarator(
addLoc(getTrackingIdentifier(varName), param.loc),
ignoredCallExpression(FunctionNames.getEmptyTrackingInfo, [
ignoredStringLiteral("restElement"),
getLocObjectASTNode(param.loc)
])
)
);
} else {
declarators.push(
t.variableDeclarator(
addLoc(getTrackingIdentifier(param.name), param.loc),
t.callExpression(
t.identifier(FunctionNames.getFunctionArgTrackingInfo),
[t.numericLiteral(i)]
)
)
);
}
});