Spark.Emit.HLSL.EmitContextHLSL.EmitExpImpl C# (CSharp) Method

EmitExpImpl() private method

private EmitExpImpl ( MidLetExp let, Span span ) : EmitValHLSL
let Spark.Mid.MidLetExp
span Span
return EmitValHLSL
        private EmitValHLSL EmitExpImpl(MidLetExp let, Span span)
        {
            var initVal = EmitExp(let.Exp, span);

            #if ALWAYSBIND
            // \todo: Just use the type from init?
            var varType = EmitType(let.Var.Type);
            var var = varType.CreateVal(
                _shared.GenerateName("_var"));
            _varVals[let.Var] = var;

            DeclareAndInitLocal(
                var,
                initVal,
                span);
            #else
            _varVals[let.Var] = initVal;
            #endif

            return EmitExp(let.Body, span);
        }

Same methods

EmitContextHLSL::EmitExpImpl ( MidAssignExp exp, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidAttributeFetch fetch, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidBreakExp exp, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidBuiltinApp app, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidElementCtorApp val, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidFieldRef fieldRef, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidForExp exp, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidIfExp exp, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidLabelExp exp, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidMethodApp app, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidSwitchExp exp, Span span ) : EmitValHLSL
EmitContextHLSL::EmitExpImpl ( MidVal val, Span span ) : EmitValHLSL