Added Entity::List

This commit is contained in:
tastytea 2018-03-30 20:30:29 +02:00
parent a89656caf1
commit 6a8fb144ad
Signed by: tastytea
GPG Key ID: 59346E0EA35C67E5
3 changed files with 110 additions and 1 deletions

View File

@ -1,6 +1,6 @@
cmake_minimum_required (VERSION 3.7)
project (mastodon-cpp
VERSION 0.7.7
VERSION 0.7.8
LANGUAGES CXX
)

43
src/easy/list.cpp Normal file
View File

@ -0,0 +1,43 @@
/* This file is part of mastodon-cpp.
* Copyright © 2018 tastytea <tastytea@tastytea.de>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, version 3.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <string>
#include <jsoncpp/json/json.h>
#include "list.hpp"
#include "macros.hpp"
using namespace Mastodon;
using List = Easy::List;
using std::string;
using std::uint64_t;
List::List(const string &json)
: Entity(json)
{}
List::List()
: Entity()
{}
const uint64_t List::id() const
{
return get_uint64("id");
}
const string List::title() const
{
return get_string("title");
}

66
src/easy/list.hpp Normal file
View File

@ -0,0 +1,66 @@
/* This file is part of mastodon-cpp.
* Copyright © 2018 tastytea <tastytea@tastytea.de>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, version 3.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef MASTODON_CPP_EASY_LIST_HPP
#define MASTODON_CPP_EASY_LIST_HPP
#include <string>
#include <vector>
// If we are compiling mastodon-cpp, use another include path
#ifdef MASTODON_CPP
#include "mastodon-cpp.hpp"
#include "easy.hpp"
#else
#include <mastodon-cpp/mastodon-cpp.hpp>
#include <mastodon-cpp/easy.hpp>
#endif
using std::string;
namespace Mastodon
{
/*!
* @brief Class to hold lists
*/
class Easy::List : public Easy::Entity
{
public:
/*!
* @brief Constructs a List object from a JSON string.
*
* @param json JSON string
*/
explicit List(const string &json);
/*!
* @brief Constructs an empty List object.
*/
List();
/*!
* @brief Returns list-ID
*/
const uint64_t id() const;
/*!
* @brief Returns title
*/
const string title() const;
};
}
#endif // MASTODON_CPP_EASY_LIST_HPP