Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | 1x 1x 1x 1x 1x 1x 1x 409807x 409807x 1x 1x 1x 1x 1x 1x 43929x 43929x 1x 1x 320038x 320038x 1x 1x 1721146x 1721146x 1x 1x 3032x 3032x 1x 1x 41943x 41943x 1x 1x | import {INode} from "./_inode"; import {AbstractToken} from "../1_lexer/tokens/abstract_token"; export abstract class AbstractNode<T extends INode> implements INode { protected children: T[]; public constructor() { this.children = []; } public abstract get(): any; public abstract getFirstToken(): AbstractToken; public abstract getLastToken(): AbstractToken; public addChild(n: T) { this.children.push(n); } public setChildren(children: T[]) { this.children = children; } public getChildren(): readonly T[] { return this.children; } public getFirstChild(): T | undefined { return this.children[0]; } public getLastChild(): T | undefined { return this.children[this.children.length - 1]; } } |