These functions modify the contents of
The first set of functions applies to all sets of user-missing values:
Attempts to add the given discrete value to set of user-missing values mv. value must have the same width as mv. Returns true if value was successfully added, false if the set could not accept any more discrete values. (Always returns false if mv is a set of long string user-missing values.)
These functions are equivalent, except for the form in which value is provided, so you may use whichever function is most convenient.
Removes a discrete value from mv (which must contain at least one discrete value) and stores it in value.
Replaces the discrete value with the given index in mv (which must contain at least index + 1 discrete values) with value.
The second set of functions applies only to numeric sets of user-missing values:
Attempts to add a numeric range covering low...high (inclusive on both ends) to mv, which must be a numeric set of user-missing values. Returns true if the range is successful added, false on failure. Fails if mv already contains a range, or if mv contains more than one discrete value, or if low > high.