public override void EnterAnonymousMethodDefinition(FlyParser.AnonymousMethodDefinitionContext context) { Code.AnonymousMethodDefinitions(context._args.Select(x => x.Text).ToArray(), () => { foreach (var statement in context.statement()) { EnterStatement(statement); } if (Code.Instructions.Last() != (int)OpCode.RETURN) { Code.Nil(); Code.Instructions.Add(OpCode.RETURN); } } ); }
/// <summary> /// Exit a parse tree produced by <see cref="FlyParser.anonymousMethodDefinition"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitAnonymousMethodDefinition([NotNull] FlyParser.AnonymousMethodDefinitionContext context) { }