mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
ValueTree: Avoid void*
This commit is contained in:
parent
32164d5e59
commit
ed3c40c2d1
2 changed files with 6 additions and 5 deletions
|
|
@ -46,7 +46,7 @@ public:
|
||||||
|
|
||||||
SharedObject& operator= (const SharedObject&) = delete;
|
SharedObject& operator= (const SharedObject&) = delete;
|
||||||
|
|
||||||
~SharedObject()
|
~SharedObject() override
|
||||||
{
|
{
|
||||||
jassert (parent == nullptr); // this should never happen unless something isn't obeying the ref-counting!
|
jassert (parent == nullptr); // this should never happen unless something isn't obeying the ref-counting!
|
||||||
|
|
||||||
|
|
@ -873,7 +873,7 @@ ValueTree::Iterator::Iterator (const ValueTree& v, bool isEnd)
|
||||||
|
|
||||||
ValueTree::Iterator& ValueTree::Iterator::operator++()
|
ValueTree::Iterator& ValueTree::Iterator::operator++()
|
||||||
{
|
{
|
||||||
internal = static_cast<SharedObject**> (internal) + 1;
|
++internal;
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -882,7 +882,7 @@ bool ValueTree::Iterator::operator!= (const Iterator& other) const { return int
|
||||||
|
|
||||||
ValueTree ValueTree::Iterator::operator*() const
|
ValueTree ValueTree::Iterator::operator*() const
|
||||||
{
|
{
|
||||||
return ValueTree (SharedObject::Ptr (*static_cast<SharedObject**> (internal)));
|
return ValueTree (SharedObject::Ptr (*internal));
|
||||||
}
|
}
|
||||||
|
|
||||||
ValueTree::Iterator ValueTree::begin() const noexcept { return Iterator (*this, false); }
|
ValueTree::Iterator ValueTree::begin() const noexcept { return Iterator (*this, false); }
|
||||||
|
|
|
||||||
|
|
@ -70,6 +70,8 @@ namespace juce
|
||||||
*/
|
*/
|
||||||
class JUCE_API ValueTree final
|
class JUCE_API ValueTree final
|
||||||
{
|
{
|
||||||
|
JUCE_PUBLIC_IN_DLL_BUILD (class SharedObject)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
/** Creates an empty, invalid ValueTree.
|
/** Creates an empty, invalid ValueTree.
|
||||||
|
|
@ -413,7 +415,7 @@ public:
|
||||||
using iterator_category = std::forward_iterator_tag;
|
using iterator_category = std::forward_iterator_tag;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void* internal;
|
SharedObject** internal = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Returns a start iterator for the children in this tree. */
|
/** Returns a start iterator for the children in this tree. */
|
||||||
|
|
@ -614,7 +616,6 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
JUCE_PUBLIC_IN_DLL_BUILD (class SharedObject)
|
|
||||||
friend class SharedObject;
|
friend class SharedObject;
|
||||||
|
|
||||||
ReferenceCountedObjectPtr<SharedObject> object;
|
ReferenceCountedObjectPtr<SharedObject> object;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue