Boo.Lang.Runtime.RuntimeServices.op_BitwiseOr C# (CSharp) Метод

op_BitwiseOr() приватный статический Метод

private static op_BitwiseOr ( object lhs, TypeCode lhsTypeCode, object rhs, TypeCode rhsTypeCode ) : object
lhs object
lhsTypeCode TypeCode
rhs object
rhsTypeCode TypeCode
Результат object
        private static object op_BitwiseOr(object lhs, TypeCode lhsTypeCode,
            object rhs, TypeCode rhsTypeCode)
        {
            IConvertible lhsConvertible = (IConvertible)lhs;
            IConvertible rhsConvertible = (IConvertible)rhs;

            switch (GetConvertTypeCode(lhsTypeCode, rhsTypeCode))
            {
                case TypeCode.Decimal:
                case TypeCode.Double:
                case TypeCode.Single:
                    throw new ArgumentException(lhsTypeCode + " | " + rhsTypeCode);
                case TypeCode.UInt64:
                    return lhsConvertible.ToUInt64(null) | rhsConvertible.ToUInt64(null);
                case TypeCode.Int64:
                    return lhsConvertible.ToInt64(null) | rhsConvertible.ToInt64(null);
                case TypeCode.UInt32:
                    return lhsConvertible.ToUInt32(null) | rhsConvertible.ToUInt32(null);
                default:
                    return lhsConvertible.ToInt32(null) | rhsConvertible.ToInt32(null);
            }
        }
RuntimeServices