diff --git a/libqpdf/JSONHandler.cc b/libqpdf/JSONHandler.cc index d602193..a3ff455 100644 --- a/libqpdf/JSONHandler.cc +++ b/libqpdf/JSONHandler.cc @@ -4,6 +4,25 @@ #include #include +struct Handlers +{ + Handlers() = default; + + JSONHandler::json_handler_t any_handler{nullptr}; + JSONHandler::void_handler_t null_handler{nullptr}; + JSONHandler::string_handler_t string_handler{nullptr}; + JSONHandler::string_handler_t number_handler{nullptr}; + JSONHandler::bool_handler_t bool_handler{nullptr}; + JSONHandler::json_handler_t dict_start_handler{nullptr}; + JSONHandler::void_handler_t dict_end_handler{nullptr}; + JSONHandler::json_handler_t array_start_handler{nullptr}; + JSONHandler::void_handler_t array_end_handler{nullptr}; + JSONHandler::void_handler_t final_handler{nullptr}; + std::map> dict_handlers; + std::shared_ptr fallback_dict_handler; + std::shared_ptr array_item_handler; +}; + class JSONHandler::Members { friend class JSONHandler; diff --git a/libqpdf/qpdf/JSONHandler.hh b/libqpdf/qpdf/JSONHandler.hh index 6439ff1..653924f 100644 --- a/libqpdf/qpdf/JSONHandler.hh +++ b/libqpdf/qpdf/JSONHandler.hh @@ -53,24 +53,6 @@ class JSONHandler static void usage(std::string const& msg); - struct Handlers - { - Handlers() = default; - - json_handler_t any_handler{nullptr}; - void_handler_t null_handler{nullptr}; - string_handler_t string_handler{nullptr}; - string_handler_t number_handler{nullptr}; - bool_handler_t bool_handler{nullptr}; - json_handler_t dict_start_handler{nullptr}; - void_handler_t dict_end_handler{nullptr}; - json_handler_t array_start_handler{nullptr}; - void_handler_t array_end_handler{nullptr}; - void_handler_t final_handler{nullptr}; - std::map> dict_handlers; - std::shared_ptr fallback_dict_handler; - std::shared_ptr array_item_handler; - }; class Members;