============== Special values ============== NA values ========= All OBITypes have an associated NA (Not Available) value. NA values are implemented by specifying an explicit NA value for each type, corresponding to the R standards: * For the types ``OBIInt_t``, ``OBIBool_t``, ``OBIIdx_t`` and ``OBITaxid_t``, the NA value is ``INT_MIN``. * For the type ``OBIChar_t``: the NA value is ``\0`` (?). * For the type ``OBIStr_t`` : the NA value is ``\0`` (?). * For the type ``OBIFloat_t``:: typedef union { double value; unsigned int word[2]; } ieee_double; static double NA_value(void) { volatile ieee_double x; x.word[hw] = 0x7ff00000; x.word[lw] = 1954; return x.value; } Minimum and maximum values for ``OBIInt_t`` =========================================== * Maximum value : ``INT_MAX`` * Minimum value : ``INT_MIN(-1?)`` Infinity values for the type ``OBIFloat_t`` =========================================== * Positive infinity : ``INFINITY`` (should be defined in ````) * Negative infinity : ``-INFINITY`` NaN value for the type ``OBIFloat_t`` ===================================== * NaN (Not a Number) value : ``NAN`` (should be defined in ```` but probably needs to be tested)