@@ -29,36 +29,37 @@ /** * \brief The type of a number. */ typedef enum of_number_type_t { - OF_NUMBER_BOOL, - OF_NUMBER_CHAR, - OF_NUMBER_SHORT, - OF_NUMBER_INT, - OF_NUMBER_LONG, - OF_NUMBER_UCHAR, - OF_NUMBER_USHORT, - OF_NUMBER_UINT, - OF_NUMBER_ULONG, - OF_NUMBER_INT8, - OF_NUMBER_INT16, - OF_NUMBER_INT32, - OF_NUMBER_INT64, - OF_NUMBER_UINT8, - OF_NUMBER_UINT16, - OF_NUMBER_UINT32, - OF_NUMBER_UINT64, - OF_NUMBER_SIZE, - OF_NUMBER_SSIZE, - OF_NUMBER_INTMAX, - OF_NUMBER_UINTMAX, - OF_NUMBER_PTRDIFF, - OF_NUMBER_INTPTR, - OF_NUMBER_UINTPTR, - OF_NUMBER_FLOAT, - OF_NUMBER_DOUBLE, + OF_NUMBER_BOOL = 0x01, + OF_NUMBER_UCHAR = 0x02, + OF_NUMBER_USHORT = 0x03, + OF_NUMBER_UINT = 0x04, + OF_NUMBER_ULONG = 0x05, + OF_NUMBER_SIZE = 0x06, + OF_NUMBER_UINT8 = 0x07, + OF_NUMBER_UINT16 = 0x08, + OF_NUMBER_UINT32 = 0x09, + OF_NUMBER_UINT64 = 0x0A, + OF_NUMBER_UINTPTR = 0x0B, + OF_NUMBER_UINTMAX = 0x0C, + OF_NUMBER_SIGNED = 0x10, + OF_NUMBER_CHAR = OF_NUMBER_UCHAR | OF_NUMBER_SIGNED, + OF_NUMBER_SHORT = OF_NUMBER_USHORT | OF_NUMBER_SIGNED, + OF_NUMBER_INT = OF_NUMBER_UINT | OF_NUMBER_SIGNED, + OF_NUMBER_LONG = OF_NUMBER_ULONG | OF_NUMBER_SIGNED, + OF_NUMBER_INT8 = OF_NUMBER_UINT8 | OF_NUMBER_SIGNED, + OF_NUMBER_INT16 = OF_NUMBER_UINT16 | OF_NUMBER_SIGNED, + OF_NUMBER_INT32 = OF_NUMBER_UINT32 | OF_NUMBER_SIGNED, + OF_NUMBER_INT64 = OF_NUMBER_UINT64 | OF_NUMBER_SIGNED, + OF_NUMBER_SSIZE = OF_NUMBER_SIZE | OF_NUMBER_SIGNED, + OF_NUMBER_INTMAX = OF_NUMBER_UINTMAX | OF_NUMBER_SIGNED, + OF_NUMBER_PTRDIFF = 0x0D | OF_NUMBER_SIGNED, + OF_NUMBER_INTPTR = 0x0E | OF_NUMBER_SIGNED, + OF_NUMBER_FLOAT = 0x20, + OF_NUMBER_DOUBLE = 0x40 | OF_NUMBER_FLOAT, } of_number_type_t; /** * \brief Provides a way to store a number in an object. */