Exemplo n.º 1
0
        public bool ToBool()
        {
            switch (valueType)
            {
            case PrimitiveValueType.Bool:
                return(boolValue);

            case PrimitiveValueType.Char:
                return(charValue != '\0');

            case PrimitiveValueType.Byte:
                return(byteValue != 0);

            case PrimitiveValueType.SByte:
                return(sbyteValue != 0);

            case PrimitiveValueType.Short:
                return(shortValue != 0);

            case PrimitiveValueType.UShort:
                return(ushortValue != 0);

            case PrimitiveValueType.Int:
                return(intValue != 0);

            case PrimitiveValueType.UInt:
                return(uintValue != 0);

            case PrimitiveValueType.Long:
                return(longValue != 0);

            case PrimitiveValueType.ULong:
                return(ulongValue != 0);

            case PrimitiveValueType.Float:
                return(!Mathf.Approximately(floatValue, 0));

            case PrimitiveValueType.Double:
                return(NumberHelpers.Approximately(doubleValue, 0));

            default:
                return(default(bool));
            }
        }
Exemplo n.º 2
0
        public bool ToBoolean(IFormatProvider provider = null)
        {
            switch (type)
            {
            case TypeCode.Boolean:
                return(m_BoolValue);

            case TypeCode.Char:
                return(m_CharValue != '\0');

            case TypeCode.Byte:
                return(m_ByteValue != 0);

            case TypeCode.SByte:
                return(m_SByteValue != 0);

            case TypeCode.Int16:
                return(m_ShortValue != 0);

            case TypeCode.UInt16:
                return(m_UShortValue != 0);

            case TypeCode.Int32:
                return(m_IntValue != 0);

            case TypeCode.UInt32:
                return(m_UIntValue != 0);

            case TypeCode.Int64:
                return(m_LongValue != 0);

            case TypeCode.UInt64:
                return(m_ULongValue != 0);

            case TypeCode.Single:
                return(!Mathf.Approximately(m_FloatValue, 0));

            case TypeCode.Double:
                return(NumberHelpers.Approximately(m_DoubleValue, 0));

            default:
                return(default(bool));
            }
        }