Of course, the value of EXTRACTOR_METATYPE_RESERVED would be even better
(zero would be the natural value for something like this).

But then it's a lexical problem. If I see something marked as “reserved” I
read “do not ever try to use this label”.

Since already libextractor uses EXTRACTOR_METATYPE_RESERVED with the
meaning of EXTRACTOR_METATYPE_NONE, would it not make sense to rename
EXTRACTOR_METATYPE_RESERVED to EXTRACTOR_METATYPE_NONE and tell the user
that there is nothing “reserved” about it?

By instinct if I see a label named EXTRACTOR_METATYPE_RESERVED I might
think that there are cases in which libextractor marks a metatype with
EXTRACTOR_METATYPE_RESERVED, expecting me to treat is as an opaque label.
Instead, EXTRACTOR_METATYPE_NONE to be usable requires libextractor never
to mark anything publicly with it (or throw it as a return value). Since
apparently this is the case, a comment similar to the one I had left in the
patch would also be useful (“used by libextractor only internally;
available to the user for marking an enum EXTRACTOR_MetaType as not
carrying any meaningful value”).

--madmurphy

Reply via email to