ICSharpCode.NRefactory.MonoCSharp.Nullable.LiftedBinaryOperator.LiftOperand C# (CSharp) Method

LiftOperand() private method

private LiftOperand ( ResolveContext rc, Expression expr ) : Expression
rc ResolveContext
expr System.Linq.Expressions.Expression
return System.Linq.Expressions.Expression
		Expression LiftOperand (ResolveContext rc, Expression expr)
		{
			TypeSpec type;
			if (expr.IsNull) {
				type = Left.IsNull ? Right.Type : Left.Type;
			} else {
				type = expr.Type;
			}

			if (!type.IsNullableType)
				type = NullableInfo.MakeType (rc.Module, type);

			return Wrap.Create (expr, type);
		}