Example #1
0
    // Token: 0x0600063D RID: 1597 RVA: 0x0002A6A4 File Offset: 0x000288A4
    private DynamicMetaObject method_1(string string_0, DynamicMetaObjectBinder dynamicMetaObjectBinder_0, IEnumerable <Expression> ienumerable_0, DynamicMetaObject dynamicMetaObject_0, Class31 <O3JSdjQuD5uSVMwF47d> .Delegate0 delegate0_0)
    {
        ParameterExpression parameterExpression = Expression.Parameter(typeof(object), null);
        IList <Expression>  list = new List <Expression>();

        list.Add(Expression.Convert(base.Expression, typeof(O3JSdjQuD5uSVMwF47d)));
        list.Add(Class31 <O3JSdjQuD5uSVMwF47d> .smethod_4(dynamicMetaObjectBinder_0));
        list.smethod_1(ienumerable_0);
        list.Add(parameterExpression);
        DynamicMetaObject dynamicMetaObject = new DynamicMetaObject(parameterExpression, BindingRestrictions.Empty);

        if (dynamicMetaObjectBinder_0.ReturnType != typeof(object))
        {
            dynamicMetaObject = new DynamicMetaObject(Expression.Convert(dynamicMetaObject.Expression, dynamicMetaObjectBinder_0.ReturnType), dynamicMetaObject.Restrictions);
        }
        if (delegate0_0 != null)
        {
            dynamicMetaObject = delegate0_0(dynamicMetaObject);
        }
        return(new DynamicMetaObject(Expression.Block(new ParameterExpression[]
        {
            parameterExpression
        }, new Expression[]
        {
            Expression.Condition(Expression.Call(Expression.Constant(this.class28_0), typeof(Class28 <O3JSdjQuD5uSVMwF47d>).GetMethod(string_0), list), dynamicMetaObject.Expression, dynamicMetaObject_0.Expression, dynamicMetaObjectBinder_0.ReturnType)
        }), this.method_4().Merge(dynamicMetaObject.Restrictions).Merge(dynamicMetaObject_0.Restrictions)));
    }
Example #2
0
    // Token: 0x0600063F RID: 1599 RVA: 0x0002A8A4 File Offset: 0x00028AA4
    private DynamicMetaObject method_3(string string_0, DynamicMetaObjectBinder dynamicMetaObjectBinder_0, Expression[] expression_0, Class31 <O3JSdjQuD5uSVMwF47d> .Delegate0 delegate0_0)
    {
        DynamicMetaObject  dynamicMetaObject = delegate0_0(null);
        IList <Expression> list = new List <Expression>();

        list.Add(Expression.Convert(base.Expression, typeof(O3JSdjQuD5uSVMwF47d)));
        list.Add(Class31 <O3JSdjQuD5uSVMwF47d> .smethod_4(dynamicMetaObjectBinder_0));
        list.smethod_1(expression_0);
        return(new DynamicMetaObject(Expression.Condition(Expression.Call(Expression.Constant(this.class28_0), typeof(Class28 <O3JSdjQuD5uSVMwF47d>).GetMethod(string_0), list), Expression.Empty(), dynamicMetaObject.Expression, typeof(void)), this.method_4().Merge(dynamicMetaObject.Restrictions)));
    }
Example #3
0
    // Token: 0x0600063E RID: 1598 RVA: 0x0002A7C0 File Offset: 0x000289C0
    private DynamicMetaObject method_2(string string_0, DynamicMetaObjectBinder dynamicMetaObjectBinder_0, IEnumerable <Expression> ienumerable_0, Class31 <O3JSdjQuD5uSVMwF47d> .Delegate0 delegate0_0)
    {
        DynamicMetaObject   dynamicMetaObject   = delegate0_0(null);
        ParameterExpression parameterExpression = Expression.Parameter(typeof(object), null);
        IList <Expression>  list = new List <Expression>();

        list.Add(Expression.Convert(base.Expression, typeof(O3JSdjQuD5uSVMwF47d)));
        list.Add(Class31 <O3JSdjQuD5uSVMwF47d> .smethod_4(dynamicMetaObjectBinder_0));
        list.smethod_1(ienumerable_0);
        list[list.Count - 1] = Expression.Assign(parameterExpression, list[list.Count - 1]);
        return(new DynamicMetaObject(Expression.Block(new ParameterExpression[]
        {
            parameterExpression
        }, new Expression[]
        {
            Expression.Condition(Expression.Call(Expression.Constant(this.class28_0), typeof(Class28 <O3JSdjQuD5uSVMwF47d>).GetMethod(string_0), list), parameterExpression, dynamicMetaObject.Expression, typeof(object))
        }), this.method_4().Merge(dynamicMetaObject.Restrictions)));
    }