init_printjson: always create singleton

This commit is contained in:
Roland Conybeare 2023-10-09 14:53:51 -04:00
commit 3b00641d17

View file

@ -4,29 +4,33 @@
*/
#include "init_printjson.hpp"
#include "PrintJson.hpp"
#include "xo/reflect/init_reflect.hpp"
#include "xo/subsys/Subsystem.hpp"
namespace xo {
void
InitSubsys<S_printjson_tag>::init()
{
/* placeholder -- expecting there to be non-trivial content soon */
} /*init*/
using xo::json::PrintJsonSingleton;
InitEvidence
InitSubsys<S_printjson_tag>::require()
{
InitEvidence retval;
void
InitSubsys<S_printjson_tag>::init()
{
/* create singleton */
PrintJsonSingleton::instance();
} /*init*/
/* subsystem dependencies for printjson/ */
retval ^= InitSubsys<S_reflect_tag>::require();
InitEvidence
InitSubsys<S_printjson_tag>::require()
{
InitEvidence retval;
/* printjson/'s own initialization code */
retval ^= Subsystem::provide<S_printjson_tag>("printjson", &init);
/* subsystem dependencies for printjson/ */
retval ^= InitSubsys<S_reflect_tag>::require();
return retval;
} /*require*/
/* printjson/'s own initialization code */
retval ^= Subsystem::provide<S_printjson_tag>("printjson", &init);
return retval;
} /*require*/
} /*namespace xo*/
/* end init_printjson.cpp */