public static FunctionDeclarationNode ParseAsFunctor(ContextNode context, IAbstractSyntaxTree function)
        {
            Contract.Requires(function.Type == Lexer.TokenType.Function);
            var instance = new FunctionDeclarationNode(context, Modifiers.NoInstance | Modifiers.Private, context.GetClass().NewFunctionName(), function);

            context.GetClass().AddLambda(instance);
            instance.Emit();
            return(instance);
        }