internal void Start() { assembly.Context.Register("Console", typeof(Console)); // code.Compile(assembly); valueField = typeGen.DefineField("value", typeof(object), FieldAttributes.Private); valueField.SetCustomAttribute(typeof(DebuggerBrowsableAttribute), typeof(DebuggerBrowsableAttribute).GetInstanceCtor(typeof(DebuggerBrowsableState)), DebuggerBrowsableState.Never); // ctor var ctorParams = new ParameterInfo[] { new ParameterInfo("val", 0, typeof(object)) }; ConstructorGenerator ctorGen = typeGen.DefineCtor(ctorParams, MethodAttributes.Public); ctorGen.SyntaxBody = new BlockStatement(new NodeList <Statement> { Expression.Assign(Expression.Member("value"), Expression.Parameter(ctorParams[0])) }); EmitOpImplicit(typeGen); EmitOpAddition(typeGen); EmitToStringMethod(); typeGen.CreateType(); assembly.Save("FluidScript.Runtime.dll"); }