onelang
Version:
OneLang transpiler framework core
15 lines (14 loc) • 709 B
TypeScript
import { OneAst as one } from "../Ast";
import { AstVisitor } from "../AstVisitor";
import { LangFileSchema } from "../../Generator/LangFileSchema";
export declare class IncludesCollector extends AstVisitor<void> {
lang: LangFileSchema.LangFile;
includes: Set<string>;
constructor(lang: LangFileSchema.LangFile);
useInclude(className: string, methodName?: string): void;
protected visitExpression(expression: one.Expression): void;
protected visitBinaryExpression(expr: one.BinaryExpression): void;
protected visitMethodReference(methodRef: one.MethodReference): void;
protected visitClassReference(classRef: one.ClassReference): void;
process(schema: one.Schema): void;
}