UNPKG

solidity-antlr4

Version:

Solidity Lang Lexer and Parser by official ANTLR4 grammar

23 lines (22 loc) 710 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TypeName = void 0; var _base = require("../base.cjs"); class TypeNameWithArray extends _base.BaseNodeString { type = "TypeName"; baseType; expression; constructor(ctx, visitor) { super(ctx, visitor); const target = [ctx.elementaryTypeName(), ctx.functionTypeName(), ctx.mappingType(), ctx.identifierPath(), ctx.typeName()].find(Boolean); if (!ctx.LBrack()) { return target.accept(visitor); } this.name = ctx.getText(); this.baseType = target.accept(visitor); this.expression = ctx.expression()?.accept(visitor) ?? null; } } const TypeName = exports.TypeName = TypeNameWithArray;