summaryrefslogtreecommitdiffstats
path: root/src/NBT/CompoundTag.hpp
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2018-07-20 23:09:33 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2018-07-20 23:49:50 +0200
commit4b9bb2ab4894c52f60baba3273c27948ad022292 (patch)
tree1bbe847b339fb3f332fd79e4f0b045d64717f2e1 /src/NBT/CompoundTag.hpp
parent64f81ff50c3e221351c0b50a65c2d0b5289b4edf (diff)
downloadMinedMap-4b9bb2ab4894c52f60baba3273c27948ad022292.tar
MinedMap-4b9bb2ab4894c52f60baba3273c27948ad022292.zip
Add Tag print functions and nbtdump tool
Diffstat (limited to 'src/NBT/CompoundTag.hpp')
-rw-r--r--src/NBT/CompoundTag.hpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/NBT/CompoundTag.hpp b/src/NBT/CompoundTag.hpp
index 39fa25d..6be0479 100644
--- a/src/NBT/CompoundTag.hpp
+++ b/src/NBT/CompoundTag.hpp
@@ -54,6 +54,20 @@ public:
return Type::Compound;
}
+ virtual void print(std::ostream& os, const std::string &indent) const {
+ os << "{" << std::endl;
+
+ std::string inner = indent + " ";
+
+ for (const auto &item : *this) {
+ os << inner << item.first << ": " << item.second->getType() << " ";
+ item.second->print(os, inner);
+ os << std::endl;
+ }
+
+ os << indent << "}";
+ }
+
template<typename T> std::shared_ptr<const T> get(const std::string &key) const {
auto it = find(key);
if (it == end())