js-ast-parser
Version:
把javascript代码字符串解析为AST对象
27 lines (26 loc) • 1.01 kB
TypeScript
import { AstNode } from "../AstNode";
import { Context } from "./Context";
import { Definition } from "./Definition";
export declare class Scope {
parent?: Scope;
definitions: Array<Definition>;
definitionsMap: any;
context: Context;
functionScope: boolean;
exports: any;
id: string;
unusedDefination: Map<AstNode, Definition>;
UndeclaredVariables: Set<any>;
constructor(parent?: Scope);
addDefinition(definition: Definition): void;
addDefinitions(definitions: Definition[]): void;
getDefinition(identifier: string): any;
deleteUnuse(definition: Definition): void;
addUnuse(definition: Definition): void;
isUnuse(definition: Definition): boolean;
fullMatchDefinition(text: string): any;
matchParentDefinitions(text: string, near?: number): any;
fullMatchParentDefinitions(text: string): any;
matchOwnDefinitions(text: string, near?: number): any;
matchDefinitions(text: string, near?: number): any;
}