inline void BinaryTree<IndexSet>::insert(const IndexSet& support, Index index) { supp_size = support.get_size(); root = root->insert(support, index); }
inline void FullTree<IndexSet>::insert(const IndexSet& support, int index) { IndexSet empty(support.get_size(),0); root.insert(support, empty, index); }
inline void VectorDBase<T>::assign(const VectorDBase<T>& v1, const IndexSet& is) { assert(v1.get_size() == is.get_size()); assert(get_size() == is.count()); T* i = start; for (typename IndexSet::Iter i1 = is.begin(); i1 != is.end(); ++i1) { *i = v1[i1]; ++i; } }