mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-06 17:27:55 +00:00
STArrays should only hold STObject's
This commit is contained in:
@@ -235,11 +235,7 @@ void STObject::add(Serializer& s) const
|
|||||||
|
|
||||||
field->addFieldID(s);
|
field->addFieldID(s);
|
||||||
field->add(s);
|
field->add(s);
|
||||||
|
s.addFieldID(STI_OBJECT, 1);
|
||||||
if (dynamic_cast<const STObject*>(field))
|
|
||||||
s.addFieldID(STI_OBJECT, 1);
|
|
||||||
else if (dynamic_cast<const STArray*>(field))
|
|
||||||
s.addFieldID(STI_ARRAY, 1);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -691,15 +687,11 @@ Json::Value STArray::getJson(int) const
|
|||||||
|
|
||||||
void STArray::add(Serializer& s) const
|
void STArray::add(Serializer& s) const
|
||||||
{
|
{
|
||||||
BOOST_FOREACH(const SerializedType& object, value)
|
BOOST_FOREACH(const STObject& object, value)
|
||||||
{
|
{
|
||||||
object.addFieldID(s);
|
object.addFieldID(s);
|
||||||
object.add(s);
|
object.add(s);
|
||||||
|
s.addFieldID(STI_OBJECT, 1);
|
||||||
if (dynamic_cast<const STObject*>(&object))
|
|
||||||
s.addFieldID(STI_OBJECT, 1);
|
|
||||||
else if (dynamic_cast<const STArray*>(&object))
|
|
||||||
s.addFieldID(STI_ARRAY, 1);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -137,12 +137,12 @@ public:
|
|||||||
class STArray : public SerializedType
|
class STArray : public SerializedType
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
typedef std::vector<SerializedType> vector;
|
typedef std::vector<STObject> vector;
|
||||||
typedef std::vector<SerializedType>::iterator iterator;
|
typedef std::vector<STObject>::iterator iterator;
|
||||||
typedef std::vector<SerializedType>::const_iterator const_iterator;
|
typedef std::vector<STObject>::const_iterator const_iterator;
|
||||||
typedef std::vector<SerializedType>::reverse_iterator reverse_iterator;
|
typedef std::vector<STObject>::reverse_iterator reverse_iterator;
|
||||||
typedef std::vector<SerializedType>::const_reverse_iterator const_reverse_iterator;
|
typedef std::vector<STObject>::const_reverse_iterator const_reverse_iterator;
|
||||||
typedef std::vector<SerializedType>::size_type size_type;
|
typedef std::vector<STObject>::size_type size_type;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
@@ -165,9 +165,9 @@ public:
|
|||||||
vector& getValue() { return value; }
|
vector& getValue() { return value; }
|
||||||
|
|
||||||
// vector-like functions
|
// vector-like functions
|
||||||
void push_back(const SerializedType& object) { value.push_back(object); }
|
void push_back(const STObject& object) { value.push_back(object); }
|
||||||
SerializedType& operator[](int j) { return value[j]; }
|
STObject& operator[](int j) { return value[j]; }
|
||||||
const SerializedType& operator[](int j) const { return value[j]; }
|
const STObject& operator[](int j) const { return value[j]; }
|
||||||
iterator begin() { return value.begin(); }
|
iterator begin() { return value.begin(); }
|
||||||
const_iterator begin() const { return value.begin(); }
|
const_iterator begin() const { return value.begin(); }
|
||||||
iterator end() { return value.end(); }
|
iterator end() { return value.end(); }
|
||||||
@@ -191,7 +191,7 @@ public:
|
|||||||
bool operator!=(const STArray &s) { return value != s.value; }
|
bool operator!=(const STArray &s) { return value != s.value; }
|
||||||
|
|
||||||
virtual SerializedTypeID getSType() const { return STI_ARRAY; }
|
virtual SerializedTypeID getSType() const { return STI_ARRAY; }
|
||||||
virtual bool isEquivalent(const SerializedType& t) const;
|
virtual bool isEquivalent(const STObject& t) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user