public override void ExitFile(ArcaeaFileFormatParser.FileContext context) { foreach (var item in context.body().item()) { IRawAffEvent @event = item.@event().value; if (@event != null) { if (@event is IRawAffItem) { chart.items.Add(@event as IRawAffItem); } else { chart.warning.Add($"第 {item.@event().Start.Line + lineOffset} 行第 {item.@event().Start.Column + 1} 列,不可作为物件使用的事件:{item.@event().GetText()}"); } } } }
/// <summary> /// Exit a parse tree produced by <see cref="ArcaeaFileFormatParser.file"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitFile([NotNull] ArcaeaFileFormatParser.FileContext context) { }