Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { default as Parser, SyntaxNode } from "tree-sitter";
- export class AST {
- public static supportedLanguages = ["cpp", "c-sharp", "java", "javascript", "python"];
- public static IsSupportedLanguage(language: string): boolean {
- return this.supportedLanguages.includes(language);
- }
- public static RegisterLanguage(language: string): void {
- try {
- require("tree-sitter-" + language);
- }
- catch (error) {
- throw new Error("tree-sitter-${language} language not found.");
- }
- this.supportedLanguages.push(language);
- }
- public AST(text: string): string {
- const tree = this.parser.parse(text);
- return tree.rootNode.toString();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement