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

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

private static op_BitwiseAnd ( object lhs, TypeCode lhsTypeCode, object rhs, TypeCode rhsTypeCode ) : object
lhs object
lhsTypeCode TypeCode
rhs object
rhsTypeCode TypeCode
Результат object
        private static object op_BitwiseAnd(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