Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory.CreateUserDefinedUnaryOperator C# (CSharp) Method

CreateUserDefinedUnaryOperator() public method

public CreateUserDefinedUnaryOperator ( ExpressionKind exprKind, CType pType, EXPR pOperand, EXPR call, MethPropWithInst pmpwi ) : EXPRUNARYOP
exprKind ExpressionKind
pType CType
pOperand EXPR
call EXPR
pmpwi MethPropWithInst
return EXPRUNARYOP
        public EXPRUNARYOP CreateUserDefinedUnaryOperator(ExpressionKind exprKind, CType pType, EXPR pOperand, EXPR call, MethPropWithInst pmpwi)
        {
            Debug.Assert(pType != null);
            Debug.Assert(pOperand != null);
            Debug.Assert(call != null);
            Debug.Assert(pmpwi != null);
            EXPRUNARYOP rval = new EXPRUNARYOP();
            rval.kind = exprKind;
            rval.type = pType;
            rval.flags = 0;
            rval.Child = pOperand;
            // The call may be lifted, but we do not mark the outer binop as lifted.
            rval.OptionalUserDefinedCall = call;
            rval.UserDefinedCallMethod = pmpwi;
            if (call.HasError())
            {
                rval.SetError();
            }
            Debug.Assert(rval != null);
            return (rval);
        }