UNPKG

@bitloops/bl-transpiler

Version:
22 lines 921 B
import { MissingIdentifierError } from '../../types.js'; import { IntermediateASTNode } from './IntermediateASTNode.js'; export class IntermediateASTIdentifierNode extends IntermediateASTNode { constructor(nodeType, classNodeName, metadata) { super(nodeType, metadata, classNodeName); } getIdentifierName() { const identifierClassNodeName = this.getClassNodeName(); const identifierValue = this.getValue(); const identifierName = identifierValue[identifierClassNodeName]; return identifierName; } //TODO is this needed? typeCheck(symbolTable) { const identifierName = this.getIdentifierName(); const identifierType = symbolTable.lookup(identifierName); if (!identifierType) { throw new MissingIdentifierError(identifierName, this.getMetadata()); } } } //# sourceMappingURL=IntermediateASTIdentifierNode.js.map