mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-07 20:11:50 +00:00
add dv::value.object(...), .list(...)
This commit is contained in:
parent
a014204d99
commit
fa12b9b751
2 changed files with 55 additions and 8 deletions
|
|
@ -228,6 +228,14 @@ namespace dv {
|
|||
value& operator[](size_t index);
|
||||
|
||||
const value& operator[](size_t index) const;
|
||||
|
||||
value& object(const key_t& key);
|
||||
|
||||
value& list(const key_t& key);
|
||||
|
||||
value& object();
|
||||
|
||||
value& list();
|
||||
};
|
||||
|
||||
using reference = value&;
|
||||
|
|
@ -355,4 +363,24 @@ namespace dv {
|
|||
}
|
||||
throw std::runtime_error("value is not a list");
|
||||
}
|
||||
|
||||
value& value::object(const key_t& key) {
|
||||
reference ref = this->operator[](key);
|
||||
ref = dv::object();
|
||||
return ref;
|
||||
}
|
||||
|
||||
value& value::list(const key_t& key) {
|
||||
reference ref = this->operator[](key);
|
||||
ref = dv::list();
|
||||
return ref;
|
||||
}
|
||||
|
||||
value& value::object() {
|
||||
return add(dv::object());
|
||||
}
|
||||
|
||||
value& value::list() {
|
||||
return add(dv::list());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue