+ /// check if an actual collision
+ operator bool() const noexcept { return chunk; }
+
+ // following only valid if test true
+ Chunk &GetChunk() noexcept { return *chunk; }
+ const Chunk &GetChunk() const noexcept { return *chunk; }
+ const Block &GetBlock() const noexcept { return GetChunk().BlockAt(block); }
+ const BlockType &GetType() const noexcept { return GetChunk().Type(GetBlock()); }
+
+ void SetBlock(const Block &b) noexcept { GetChunk().SetBlock(block, b); }
+