55 const Json &name =
nullptr)
override;
69 const Json &name =
nullptr)
override;
72 const Str &classname)
override;
This file has a definition of Element class, which is one of the cores of this program.
virtual void accessed_by_instance_of(const Str &classname) override
Set class name of an instance calling Element::check_required_keys.
ShPtr< Element > ElPtr
An alias for a shared pointer of Element class.
GenList is a list (or vector) of Generator objects.
Vec< ShPtr< Generator > > generator_list
std::string Str
Str is an alias for string.
GenList(const Vec< ShPtr< Generator >> &generator_list_)
Constructor of GenList class.
nlohmann::json Json
Json is an alias for nlohmann::json.
std::vector< T > Vec
Vec is an alias for vector (same as list in Python).
virtual ShPtr< Generator > get_generator(const Json &name=nullptr) override
Get an element of generator_list as a shared pointer of Generator class.
Generator is an abstract class to generate data.
virtual ElPtr get_element(const Json &name=nullptr) override
Get an element of generator_list as a shared pointer of Element class.
std::shared_ptr< T > ShPtr
ShPtr is an alias for shared pointer.
int get_length()
Get a length of generator_list.