Elie Roux wrote:
The other behaviour I find strange is that an attribute on a node can be both 1 and -1... It's just a curiosity, as the good way to test if an attribute exists is (I think) to call node.has_attribute with only two
setting an attribute to -1 is equivalent unsetting it (so the has_attribute test then returns nil); however the attribute node is still there since it's more efficient to release it when the node itself is released; we experimented with different implementations (sets, etc) but the current was the most efficient we might use other negative values for special purposes (at least that was the original idea) so don't make code that depends on negative values because at some point we might make use of them
arguments. Also, is there a way to get the value of an attribute on a node by doing something else than testing some?
you could follow the linked list of attributes of a node but in general the test local a = node.has_attributes(n,123) if a then ... end is more efficient Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------