SYNOPSIS
string * P_CLASS_ADS "ClassAds" -- experimental
string * Set(P_CLASS_ADS, string * value)
string * Query(P_CLASS_ADS)
or
string SetClassAds(string * value)
string QueryClassAds()
also:
string * AddClassAdj (string|string * id)
string * RemoveClassAdj (string|string * id)
DESCRIPTION
The property holds an array of strings which serve as classification
adjectives of the object. For example a torch has "burnable" set as class
adjective.
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_ADS with generic adjective strings
(to make 'all burnable things' possible), changes to P_CLASS_IDS should
happen JUST through these two lfuns:
string * AddClassAdj (string|string * id)
Adds <id> to P_CLASS_ADS and returns the new value of P_CLASS_ADS.
<id> may an array of strings as well.
string * RemoveClassAdj (string|string * id)
Removes <id> to P_CLASS_ADS and returns the new value of P_CLASS_ADS.
<id> may an array of strings as well.
However, in general it is not necessary to modify the P_CLASS_ADS as
the inherited /std-thing takes care of it.
Note: any change to an object's current class adjectives sets the value
of the P_CLASS_PATTERN property back to 0.
EXAMPLE
AddClassAdj(CA_BURNABLE);
-- Adds class adjective "burnable" to the object.
AVAILABILITY
Include: <properties.h>
<classes.h> : defined class ids and adjectives.
Availability: /std/thing(/description) and descendants.
SEE ALSO
thing(S), ads(P), classads(P), classpattern(P)