diff options
Diffstat (limited to 'sord/sordmm.hpp')
-rw-r--r-- | sord/sordmm.hpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sord/sordmm.hpp b/sord/sordmm.hpp index a9a8f91..c4236d5 100644 --- a/sord/sordmm.hpp +++ b/sord/sordmm.hpp @@ -423,7 +423,17 @@ Node::to_bool() const struct Iter : public Wrapper<SordIter*> { inline Iter(World& world, SordIter* c_obj) : Wrapper<SordIter*>(c_obj), _world(world) {} + + Iter(const Iter&) = delete; + Iter& operator=(const Iter&) = delete; + + inline Iter(Iter&& iter) + : Wrapper<SordIter*>(iter) + , _world(iter._world) + {} + inline ~Iter() { sord_iter_free(_c_obj); } + inline bool end() const { return sord_iter_end(_c_obj); } inline bool next() const { return sord_iter_next(_c_obj); } inline Iter& operator++() { |