public override void EnterClass_declaration(DcParser.Class_declarationContext context) { _currentClass = new DcClass(_dcFile, context.name.Text, false, false); // Add all our parents var parents = context.parents; while (parents != null) { if (!_dcFile.TryGetClassByName(parents.name.Text, out var parent)) { throw new Exception($"Unknown parent: {parents.name.Text}"); } _currentClass.AddParent(parent); parents = parents.next; } }
public override void ExitClass_declaration(DcParser.Class_declarationContext context) { _dcFile.AddClass(_currentClass); _currentClass = null; }
/// <summary> /// Exit a parse tree produced by <see cref="DcParser.class_declaration"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitClass_declaration([NotNull] DcParser.Class_declarationContext context) { }