Added JsonArray::removeAt() (issue #58)

This commit is contained in:
Benoit Blanchon
2015-05-02 15:16:18 +02:00
parent 94d38c0680
commit 0eff567910
4 changed files with 60 additions and 9 deletions

View File

@ -15,8 +15,7 @@ using namespace ArduinoJson::Internals;
JsonArray JsonArray::_invalid(NULL);
JsonVariant &JsonArray::at(int index) const {
node_type *node = _firstNode;
while (node && index--) node = node->next;
node_type *node = getNodeAt(index);
return node ? node->content : JsonVariant::invalid();
}
@ -43,6 +42,14 @@ JsonObject &JsonArray::createNestedObject() {
return object;
}
JsonArray::node_type *JsonArray::getNodeAt(int index) const {
node_type *node = _firstNode;
while (node && index--) node = node->next;
return node;
}
void JsonArray::removeAt(int index) { removeNode(getNodeAt(index)); }
void JsonArray::writeTo(JsonWriter &writer) const {
writer.beginArray();