X-Git-Url: https://granicus.if.org/sourcecode?a=blobdiff_plain;f=lib%2Fbase%2Farray.hpp;h=d6f7fcdfc2f1a4239097326078b334858ac3f41a;hb=9d513d8f0570602abdd7cd65d1df62d259190ed1;hp=62bcf7e2ee9d76e22820d0b56dec963a0be168e8;hpb=d9c0b6f806ac2330b902d257509def4fa74f35de;p=icinga2 diff --git a/lib/base/array.hpp b/lib/base/array.hpp index 62bcf7e2e..d6f7fcdfc 100644 --- a/lib/base/array.hpp +++ b/lib/base/array.hpp @@ -55,9 +55,9 @@ public: Array(std::initializer_list init); Value Get(SizeType index) const; - void Set(SizeType index, const Value& value); - void Set(SizeType index, Value&& value); - void Add(Value value); + void Set(SizeType index, const Value& value, bool overrideFrozen = false); + void Set(SizeType index, Value&& value, bool overrideFrozen = false); + void Add(Value value, bool overrideFrozen = false); Iterator Begin(); Iterator End(); @@ -65,14 +65,14 @@ public: size_t GetLength() const; bool Contains(const Value& value) const; - void Insert(SizeType index, Value value); - void Remove(SizeType index); - void Remove(Iterator it); + void Insert(SizeType index, Value value, bool overrideFrozen = false); + void Remove(SizeType index, bool overrideFrozen = false); + void Remove(Iterator it, bool overrideFrozen = false); - void Resize(SizeType newSize); - void Clear(); + void Resize(SizeType newSize, bool overrideFrozen = false); + void Clear(bool overrideFrozen = false); - void Reserve(SizeType newSize); + void Reserve(SizeType newSize, bool overrideFrozen = false); void CopyTo(const Array::Ptr& dest) const; Array::Ptr ShallowClone() const; @@ -108,7 +108,7 @@ public: Array::Ptr Reverse() const; - void Sort(); + void Sort(bool overrideFrozen = false); String ToString() const override; @@ -116,7 +116,7 @@ public: void Freeze(); Value GetFieldByName(const String& field, bool sandboxed, const DebugInfo& debugInfo) const override; - void SetFieldByName(const String& field, const Value& value, const DebugInfo& debugInfo) override; + void SetFieldByName(const String& field, const Value& value, bool overrideFrozen, const DebugInfo& debugInfo) override; private: std::vector m_Data; /**< The data for the array. */