本文整理汇总了TypeScript中@babel/traverse.NodePath.remove方法的典型用法代码示例。如果您正苦于以下问题:TypeScript NodePath.remove方法的具体用法?TypeScript NodePath.remove怎么用?TypeScript NodePath.remove使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@babel/traverse.NodePath
的用法示例。
在下文中一共展示了NodePath.remove方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: dispatchVisitMethods
/**
* Calls into visitor methods for visited node types using `estraverse` API of
* providing the node and the parent node, and translates the `VisitorOption`
* return value into directives on the `path` object used by `babel-traverse` to
* advise visitor control flow, i.e. `stop`, `skip`, and `remove`.
*/
function dispatchVisitMethods(
methodNames: Array<keyof Visitor>,
path: NodePath<babel.Node>,
visitor: Visitor): void {
for (const methodName of methodNames) {
if (typeof visitor[methodName] === 'function') {
// TODO(rictic): can maybe remove this cast in TS 2.8
const result = (visitor[methodName] as VisitorCallback<babel.Node>)!
(path.node, path.parent, path);
switch (result) {
case VisitorOption.Break:
return path.stop();
case VisitorOption.Skip:
return path.skip();
case VisitorOption.Remove:
return path.remove();
}
}
}
}