0.2.0 • Published 6 months ago
@tonkite/tlb-parser v0.2.0
TL-B Parser
Installation
pnpm add @tonkite/tlb-parser
Usage
Create a file with TLB scheme according to the documentation. This is an example of such a file (call it example.tlb
):
t$_ x:# y:(uint 5) = A;
Then do:
npx tlb-parser example.tlb
Or you can use the tool from inside JS or TS code.
import { parse, NodeVisitor, ASTRootBase } from '@tonkite/tlb-parser';
class TestVisitor extends NodeVisitor {
public visited: { [key: string]: number };
constructor() {
super();
this.visited = {};
}
override genericVisit(node: nodes.ASTRootBase): void {
if (this.visited[node.constructor.name] === undefined) {
this.visited[node.constructor.name] = 0;
}
this.visited[node.constructor.name] += 1;
return super.genericVisit(node);
}
}
const schema = `
t$_ x:# y:(uint 5) = A;
`;
const tree = parse(schema);
const visitor = new TestVisitor();
visitor.visit(tree);
console.log(util.inspect(visitor.visited, { showHidden: false, depth: null, colors: true }));
console.log(util.inspect(tree, { showHidden: false, depth: null, colors: true }));
Related
- IntelliJ plugin: https://github.com/ton-blockchain/intellij-ton
License
0.2.0
6 months ago