Files
ArduinoJson/JsonParser/JsonArray.h

74 lines
1.6 KiB
C
Raw Normal View History

2014-07-03 13:58:08 +02:00
/*
* Arduino JSON library
* Benoit Blanchon 2014 - MIT License
*/
2014-01-11 15:05:35 +01:00
2014-07-03 13:58:08 +02:00
#pragma once
2014-01-11 15:05:35 +01:00
#include "JsonObjectBase.h"
#include "JsonValue.h"
2014-07-03 14:00:51 +02:00
namespace ArduinoJson
2014-01-11 15:05:35 +01:00
{
2014-07-03 14:00:51 +02:00
namespace Parser
{
class JsonHashTable;
class JsonArray : public JsonObjectBase
{
2014-07-14 13:17:30 +02:00
friend class JsonParserBase;
friend class JsonValue;
2014-01-11 15:05:35 +01:00
2014-07-03 14:00:51 +02:00
public:
2014-01-11 15:05:35 +01:00
2014-07-03 14:00:51 +02:00
JsonArray() {}
2014-01-11 15:05:35 +01:00
bool success()
{
return JsonObjectBase::success() && tokens->type == JSMN_ARRAY;
}
2014-07-03 14:00:51 +02:00
int getLength()
{
return success() ? tokens[0].size : 0;
2014-07-03 14:00:51 +02:00
}
2014-01-11 15:05:35 +01:00
JsonValue operator[](int index);
2014-07-16 13:53:56 +02:00
DEPRECATED JsonArray getArray(int index)
{
return (JsonArray) (*this)[index];
}
2014-07-16 13:53:56 +02:00
DEPRECATED bool getBool(int index)
{
return (bool) (*this)[index];
}
2014-07-16 13:53:56 +02:00
DEPRECATED double getDouble(int index)
{
return (double) (*this)[index];
}
2014-07-16 13:53:56 +02:00
DEPRECATED JsonHashTable getHashTable(int index);
2014-07-16 13:53:56 +02:00
DEPRECATED long getLong(int index)
{
return (long) (*this)[index];
}
2014-07-16 13:53:56 +02:00
DEPRECATED char* getString(int index)
{
return (char*) (*this)[index];
}
2014-07-03 14:00:51 +02:00
private:
2014-01-11 15:05:35 +01:00
JsonArray(char* json, jsmntok_t* tokens)
: JsonObjectBase(json, tokens)
{
}
2014-07-03 14:00:51 +02:00
};
}
}