Lines Matching +full:other +full:- +full:key
12 // documentation and/or other materials provided with the distribution.
48 /// Constructor with a non-empty root.
71 dynamic_cast< detail::static_inner_node* >(_root->deep_copy()); in deep_copy()
78 /// By combination we understand a new tree that contains the full key space of
80 /// right-hand side (aka "other") tree.
82 /// Any nodes marked as dynamic "win" over non-dynamic nodes and the resulting
90 /// example, if a single key represents an inner node in one tree but a leaf
91 /// node in the other one.
101 _root->combine(detail::tree_key(), other_root)); in combine()
108 /// This operation creates the given key as an inner node. Further set
112 /// This method does not raise errors on invalid/unknown keys or other
113 /// tree-related issues. The reasons is that define() is a method that does not
114 /// depend on user input: it is intended to pre-populate the tree with a
117 /// \param dotted_key The key to be registered in dotted representation.
122 const detail::tree_key key = detail::parse_key(dotted_key); in define_dynamic() local
123 _root->define(key, 0, detail::new_node< detail::dynamic_inner_node >); in define_dynamic()
125 UNREACHABLE_MSG("define() failing due to key errors is a programming " in define_dynamic()
133 /// \param dotted_key The key to be checked.
135 /// \return True if the key is set to a specific value (not just defined).
136 /// False if the key is not set or if the key does not exist.
138 /// \throw invalid_key_error If the provided key has an invalid format.
142 const detail::tree_key key = detail::parse_key(dotted_key); in is_set() local
144 const detail::base_node* raw_node = _root->lookup_ro(key, 0); in is_set()
160 /// \param dotted_key The key to be pushed.
161 /// \param state The Lua state into which to push the key's value.
163 /// \throw invalid_key_error If the provided key has an invalid format.
164 /// \throw unknown_key_error If the provided key is unknown.
168 const detail::tree_key key = detail::parse_key(dotted_key); in push_lua() local
169 const detail::base_node* raw_node = _root->lookup_ro(key, 0); in push_lua()
174 throw unknown_key_error(key); in push_lua()
181 /// \param dotted_key The key to be set.
185 /// \throw invalid_key_error If the provided key has an invalid format.
187 /// \throw unknown_key_error If the provided key is unknown.
192 const detail::tree_key key = detail::parse_key(dotted_key); in set_lua() local
194 detail::base_node* raw_node = _root->lookup_rw( in set_lua()
195 key, 0, detail::new_node< string_node >); in set_lua()
202 throw invalid_key_value(key, e.what()); in set_lua()
204 throw invalid_key_value(key, "Type mismatch"); in set_lua()
211 /// \param dotted_key The key to be looked up.
215 /// \throw invalid_key_error If the provided key has an invalid format.
216 /// \throw unknown_key_error If the provided key is unknown.
220 const detail::tree_key key = detail::parse_key(dotted_key); in lookup_string() local
221 const detail::base_node* raw_node = _root->lookup_ro(key, 0); in lookup_string()
226 throw unknown_key_error(key); in lookup_string()
231 /// Sets the value of a leaf addressed by its key from a string value.
237 /// \param dotted_key The key to be registered in dotted representation.
240 /// \throw invalid_key_error If the provided key has an invalid format.
242 /// \throw unknown_key_error If the provided key is unknown.
247 const detail::tree_key key = detail::parse_key(dotted_key); in set_string() local
249 detail::base_node* raw_node = _root->lookup_rw( in set_string()
250 key, 0, detail::new_node< string_node >); in set_string()
257 throw invalid_key_value(key, e.what()); in set_string()
259 throw invalid_key_value(key, "Type mismatch"); in set_string()
264 /// Converts the tree to a collection of key/value string pairs.
272 /// \throw invalid_key_error If the provided key has an invalid format.
273 /// \throw unknown_key_error If the provided key is unknown.
274 /// \throw value_error If the provided key points to a leaf.
283 detail::tree_key key; in all_properties() local
288 key = detail::parse_key(dotted_key); in all_properties()
289 raw_node = _root->lookup_ro(key, 0); in all_properties()
294 child.all_properties(properties, key); in all_properties()
317 /// \param other The other object to compare this one to.
319 /// \return True if this object and other are equal; false otherwise.
321 config::tree::operator==(const tree& other) const in operator ==()
325 return _root == other._root || all_properties() == other.all_properties(); in operator ==()
331 /// \param other The other object to compare this one to.
333 /// \return True if this object and other are different; false otherwise.
335 config::tree::operator!=(const tree& other) const in operator !=()
337 return !(*this == other); in operator !=()