Example #1
0
        protected override InitializerCompiler GetInitializerCompiler(NativeLiteralEncodingStrategy literalEncodingStrategy, NativeDynamicCallStrategy dynamicCallStrategy, NativeDiscreteBindingEncodingStrategy discreteBindingEncodingStrategy)
        {
            BindingScope globalScope   = BindingScope.ForClassInitializer((SmalltalkClass)this.Initializer.Binding.Value, this.Compiler.Parameters.Runtime.GlobalScope);
            BindingScope reservedScope = ReservedScope.ForClassInitializer();

            return(this.GetInitializerCompiler(globalScope, reservedScope, literalEncodingStrategy, dynamicCallStrategy, discreteBindingEncodingStrategy));
        }
 private Expression <Func <object, ExecutionContext, object> > CompileClassInitializer(SmalltalkRuntime runtime, SmalltalkNameScope globalNameScope, SmalltalkClass cls)
 {
     return(this.Compile(runtime,
                         BindingScope.ForClassInitializer(cls, globalNameScope),
                         ReservedScope.ForClassInitializer(),
                         String.Format("{0} initializer", this.Binding.Name.Value)));
 }