New-style move members are not completely finished yet.
Fixed depth iterators do not iterate over the entire range if there are 'holes' in the tree.
If a range uses const iter_base& as end iterator, things will inevitably go wrong, because upcast from iter_base to a non-sibling_iter is incorrect. This upcast should be removed (and then all illegal uses as previously in 'equal' will be flagged by the compiler). This requires new copy constructors though.
There's a bug in replace(sibling_iterator, ...) when the ranges sit next to each other. Turned up in append_child(iter,iter) but has been avoided now.
"std::operator<" does not work correctly on our iterators, and for some reason a globally defined template operator< did not get picked up. Using a comparison class now, but this should be investigated.
Function Documentation
template<class T1>
void kp::constructor
(
T1 *
p
)
template<class T1, class T2>
void kp::constructor
(
T1 *
p,
T2 &
val
)
template<class T1>
void kp::destructor
(
T1 *
p
)
Generated on Thu Mar 16 13:46:12 2006 for FreeLing by
1.4.4