X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fworld%2FBlockTypeRegistry.hpp;h=6612d1516e72c893298f21ed193830a15fdd5671;hb=e4a1425dccd0ba9b106e415dd02809f4308a85ee;hp=38afac4b6be98b18a8ad2273d284bf5e7a18f14d;hpb=ad7cf72ed47c39640d5588ba53386e090289b4d1;p=blank.git diff --git a/src/world/BlockTypeRegistry.hpp b/src/world/BlockTypeRegistry.hpp index 38afac4..6612d15 100644 --- a/src/world/BlockTypeRegistry.hpp +++ b/src/world/BlockTypeRegistry.hpp @@ -11,12 +11,23 @@ namespace blank { class BlockTypeRegistry { public: - BlockTypeRegistry(); + using size_type = std::vector::size_type; + using reference = std::vector::reference; + using const_reference = std::vector::const_reference; + using iterator = std::vector::iterator; + using const_iterator = std::vector::const_iterator; public: - Block::Type Add(const BlockType &); + BlockTypeRegistry(); + + Block::Type Add(BlockType &&); + + size_t size() const noexcept { return types.size(); } - size_t Size() const noexcept { return types.size(); } + iterator begin() noexcept { return types.begin(); } + const_iterator begin() const noexcept { return types.begin(); } + iterator end() noexcept { return types.end(); } + const_iterator end() const noexcept { return types.end(); } BlockType &operator [](Block::Type id) { return types[id]; } const BlockType &operator [](Block::Type id) const { return types[id]; }