SYNOPSIS
string * P_CLASS_IDS "ClassIds" -- experimental
string * Set(P_CLASS_IDS, string * value)
string * Query(P_CLASS_IDS)
or
string SetClassIds(string * value)
string QueryClassIds()
also:
string * AddClassId (string|string * id)
string * RemoveClassId (string|string * id)
DESCRIPTION
The property holds an array of strings which serve as classification
ids of the object. For example a torch has "thing" set as class id.
The strings set are mapped to lowercase, leading and trailing spaces
are removed, sequences of embedded spaces are shrunk to just one
space each.
As the /std-things initialise P_CLASS_IDS with generic id strings (to
make 'all things' possible), changes to P_IDS should happen JUST
through these two lfuns:
string * AddClassId (string|string * id)
Adds <id> to P_CLASS_IDS and returns the new value of P_CLASS_IDS.
<id> may an array of strings as well.
string * RemoveClassId (string|string * id)
Removes <id> to P_CLASS_IDS and returns the new value of P_CLASS_IDS.
<id> may an array of strings as well.
However, in general it is not necessary to modify the P_CLASS_IDS as
the inherited /std-thing takes care of it.
Note: any change to an object's current class ids sets the value
of the P_CLASS_PATTERN property back to 0.
EXAMPLE
AddClassId(C_WEAPON); -- Adds class id "weapon" to the object.
AVAILABILITY
Include: <properties.h>
<classes.h> : defined class ids and adjectives.
Availability: /std/thing(/description) and descendants.
SEE ALSO
thing(S), ids(P), classads(P), classpattern(P)