Example #1
0
        public static Lambda Id()
        {
            var builder = new CodeBuilder();

            builder.Parameter("$0");
            builder.Variable("$0");
            return(builder.Lambda());
        }
Example #2
0
        public void ReturnValueFunction(string functionName, Value value, VisibilityType visibility =
                                        Public, bool _override = false, bool global = false, bool autoInvoke = false)
        {
            var inner = new CodeBuilder();

            inner.Value(value);
            var lambda = inner.Lambda();

            Function(functionName, lambda, false, visibility, _override, global);
        }
Example #3
0
        public static Lambda FPut()
        {
            var builder = new CodeBuilder();

            builder.Parameter("$0");
            builder.Variable("$0");
            builder.Operator("|>");
            builder.Variable("put");
            return(builder.Lambda());
        }
Example #4
0
        public static Lambda AddOne()
        {
            var builder = new CodeBuilder();

            builder.Parameter("$0");
            builder.Variable("$0");
            builder.Operator("+");
            builder.Value(1);
            return(builder.Lambda());
        }
        protected override void setValue(string name, Value value, VisibilityType visibility, bool overriding, bool allowNil, int index)
        {
            base.setValue(name, value, visibility, overriding, allowNil, index);
            if (value is InvokableReference)
            {
                return;
            }

            var builder = new CodeBuilder();

            builder.Parameter("$0");
            builder.AssignToField(name, new Variable("$0"), index);
            var lambda        = builder.Lambda();
            var setterName    = SetterName(name);
            var invokableName = InvokableName(setterName);

            State.SetInvokable(invokableName, lambda);
            base.setValue(setterName, new InvokableReference(invokableName), VisibilityType.Public, false, false, index);
            removeAbstracts(name);
        }
Example #6
0
 public void Function(string functionName, CodeBuilder builder, bool multiCapabable = true,
                      VisibilityType visibility = Public, bool _override = false)
 {
     Function(functionName, builder.Lambda(), multiCapabable, visibility, _override);
 }