<> <> <> <> DIRECTORY CD; CDPropertyTools: CEDAR DEFINITIONS = BEGIN <> <<>> <> <> <<>> <> <> << >> <> <<1) any associated property from the root atom >> <<2) the root property from all layers>> <<3) a root property from itself >> <> <<4) layerkeys from root >> <<5) a root property from any associated property key >> <> <<>> <> <> <<>> RemoveProperties: PROC [root: ATOM]; <<--Removes >> <<-- root from layers>> <<-- root from itself>> <<-- layerkeys from root>> <<-- further properties as associated>> <<--Exclusive properties are not removed>> Associate: PROC [root, key: ATOM]; <<--Associates "key" to "root":>> <<-- whenever RemoveProperties[root] is called, the "key" property on "root" >> <<-- and the "root" property on "key" will both be removed.>> <<--Exclusive properties are not removed.>> <<>> IsExclusive: PROC [key: REF] RETURNS [BOOL]; <<--Returns whether the "key" property is exclusive.>> <<-- An exclusive property must not be used interactively>> <<-- [but also properties with non Atom keys shouldn't] >> END.