UNPKG

antlr-ng

Version:

Next generation ANTLR Tool

39 lines (38 loc) 1.68 kB
import { HashSet, OrderedHashSet } from "antlr4ng"; import type { IAttribute } from "../../../tool/IAttribute.js"; import { Rule } from "../../../tool/Rule.js"; import { IOutputModelFactory } from "../../IOutputModelFactory.js"; import { DispatchMethod } from "../DispatchMethod.js"; import { OutputModelObject } from "../OutputModelObject.js"; import { AttributeDecl } from "./AttributeDecl.js"; import { Decl } from "./Decl.js"; /** * This object models the structure holding all of the parameters, * return values, local variables, and labels associated with a rule. */ export declare class StructDecl extends Decl { derivedFromName: string; provideCopyFrom: boolean; readonly tokenDecls: OrderedHashSet<Decl>; readonly tokenTypeDecls: OrderedHashSet<Decl>; readonly tokenListDecls: OrderedHashSet<Decl>; readonly ruleContextDecls: OrderedHashSet<Decl>; readonly ruleContextListDecls: OrderedHashSet<Decl>; readonly attributeDecls: HashSet<Decl>; protected readonly generateListener: boolean; protected readonly generateVisitor: boolean; dispatchMethods: DispatchMethod[]; attrs: OrderedHashSet<Decl>; getters: OrderedHashSet<Decl>; ctorAttrs: AttributeDecl[]; interfaces: OutputModelObject[]; extensionMembers: OutputModelObject[]; signatures: OrderedHashSet<Decl>; constructor(factory: IOutputModelFactory, r: Rule, name?: string); addDispatchMethods(r: Rule): void; addDecl(a: Decl | IAttribute): void; addDecls(attrList: IAttribute[]): void; implementInterface(value: OutputModelObject): void; addExtensionMember(member: OutputModelObject): void; isEmpty(): boolean; }