void Remove(Iterator it);
void Resize(size_t new_size);
+ void Clear(void);
void CopyTo(const Array::Ptr& dest) const;
Array::Ptr ShallowClone(void) const;
AExpression::Ptr exprl = m_Operand2;
if (path.size() == 1) {
- VERIFY(exprl->m_Operator == &AExpression::OpDict);
+ if (m_Operator == &AExpression::OpSet)
+ result->Clear();
+
+ if (exprl->m_Operator != &AExpression::OpDict)
+ BOOST_THROW_EXCEPTION(ConfigError("The '" + path[0] + "' attribute must be a dictionary.") << errinfo_debuginfo(m_DebugInfo));
+
Array::Ptr subexprl = exprl->m_Operand1;
ObjectLock olock(subexprl);
BOOST_FOREACH(const AExpression::Ptr& expr, subexprl) {