#ifndef JsonParsing_hpp #define JsonParsing_hpp #include "lottiejson11/lottiejson11.hpp" #include #include #include namespace lottie { class LottieParsingException: public std::exception { public: class Guard { public: Guard(); ~Guard(); }; public: LottieParsingException(); virtual const char* what() const throw(); }; json11::Json getAny(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional getOptionalAny(json11::Json::object const &object, std::string const &key) noexcept(false); json11::Json::object getObject(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional getOptionalObject(json11::Json::object const &object, std::string const &key) noexcept(false); std::vector getObjectArray(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional> getOptionalObjectArray(json11::Json::object const &object, std::string const &key) noexcept(false); std::vector getAnyArray(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional> getOptionalAnyArray(json11::Json::object const &object, std::string const &key) noexcept(false); std::string getString(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional getOptionalString(json11::Json::object const &object, std::string const &key) noexcept(false); int32_t getInt(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional getOptionalInt(json11::Json::object const &object, std::string const &key) noexcept(false); double getDouble(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional getOptionalDouble(json11::Json::object const &object, std::string const &key) noexcept(false); bool getBool(json11::Json::object const &object, std::string const &key) noexcept(false); std::optional getOptionalBool(json11::Json::object const &object, std::string const &key) noexcept(false); } #endif /* JsonParsing_hpp */