chomik 0.2.1
experimental and minimalistic programming language

My name is Pawel Biernacki.
I am a software engineer.
This site is my hobby project.

Loading...
Searching...
No Matches
chomik::external_placeholder_generator Class Reference

#include <chomik.h>

Inheritance diagram for chomik::external_placeholder_generator:
Collaboration diagram for chomik::external_placeholder_generator:

Public Member Functions

 external_placeholder_generator (const std::string &filename, unsigned new_line_number)
 
virtual void report (std::ostream &s) const override
 
virtual void initialize (machine &m) override
 
virtual void increment (machine &m) override
 
virtual void initialize_description_of_a_cartesian_product (description_of_a_cartesian_product &target) const override
 
virtual void initialize_mapping (const matching_protocol &mp) override
 
virtual bool get_has_placeholder_with_value (const std::string &p) const override
 
virtual placeholder_with_valueget_placeholder_with_value (const std::string &p) override
 
virtual const placeholder_with_valueget_placeholder_with_value (const std::string &p) const override
 
void clear_mappings ()
 
void add_placeholder_with_value (std::shared_ptr< placeholder_with_value > &&p)
 
- Public Member Functions inherited from chomik::basic_generator
virtual ~basic_generator ()
 
void set_father (std::shared_ptr< basic_generator > f)
 
virtual const std::string convert_childs_placeholder_name_to_father (const std::string &cpn) const
 
virtual void add_placeholder (const std::string &p, std::shared_ptr< generic_type > &&t)
 
virtual bool get_can_have_placeholders () const
 
virtual int get_placeholder_value_integer (const std::string &p) const
 
virtual double get_placeholder_value_float (const std::string &p) const
 
std::string get_placeholder_value_string (const std::string &p) const
 
std::string get_placeholder_value_enum (const std::string &p) const
 
virtual void get_placeholder_value_code (const std::string &p, code &target) const
 
virtual bool get_the_cartesian_product_of_placeholder_types_is_finite () const
 
virtual bool get_the_cartesian_product_of_placeholder_types_is_small (machine &m) const
 
virtual bool get_the_cartesian_product_of_placeholder_types_is_empty () const
 
virtual bool get_the_cartesian_product_of_placeholder_types_has_one_item () const
 
virtual bool get_is_valid ()
 
virtual bool get_terminated () const
 
virtual std::string get_actual_text_representation_of_a_placeholder (const std::string &placeholder) const
 
virtual bool get_has_placeholder (const std::string &p) const
 
virtual void add_mapping (const std::string &f, const std::string &s)
 
virtual void debug () const
 
virtual void finalize (machine &m)
 

Additional Inherited Members

- Protected Attributes inherited from chomik::basic_generator
std::weak_ptr< basic_generatormy_father
 
- Static Protected Attributes inherited from chomik::basic_generator
static simple_placeholder_with_value_and_report< int, static_cast< int >(chomik::variable_with_value::actual_memory_representation_type::INTEGER)> dummy
 

Detailed Description

This is a kind of generator used when the external placeholders are involved. It is not really iterable.

Constructor & Destructor Documentation

◆ external_placeholder_generator()

chomik::external_placeholder_generator::external_placeholder_generator ( const std::string & filename,
unsigned new_line_number )

Member Function Documentation

◆ add_placeholder_with_value()

void chomik::external_placeholder_generator::add_placeholder_with_value ( std::shared_ptr< placeholder_with_value > && p)

◆ clear_mappings()

void chomik::external_placeholder_generator::clear_mappings ( )

◆ get_has_placeholder_with_value()

virtual bool chomik::external_placeholder_generator::get_has_placeholder_with_value ( const std::string & p) const
overridevirtual

Reimplemented from chomik::basic_generator.

◆ get_placeholder_with_value() [1/2]

virtual const placeholder_with_value & chomik::external_placeholder_generator::get_placeholder_with_value ( const std::string & p) const
overridevirtual

Reimplemented from chomik::basic_generator.

◆ get_placeholder_with_value() [2/2]

virtual placeholder_with_value & chomik::external_placeholder_generator::get_placeholder_with_value ( const std::string & p)
overridevirtual

Reimplemented from chomik::basic_generator.

◆ increment()

virtual void chomik::external_placeholder_generator::increment ( machine & m)
overridevirtual

◆ initialize()

virtual void chomik::external_placeholder_generator::initialize ( machine & m)
overridevirtual

◆ initialize_description_of_a_cartesian_product()

virtual void chomik::external_placeholder_generator::initialize_description_of_a_cartesian_product ( description_of_a_cartesian_product & target) const
overridevirtual

◆ initialize_mapping()

virtual void chomik::external_placeholder_generator::initialize_mapping ( const matching_protocol & mp)
overridevirtual

Reimplemented from chomik::basic_generator.

◆ report()

virtual void chomik::external_placeholder_generator::report ( std::ostream & s) const
overridevirtual

Reimplemented from chomik::basic_generator.


The documentation for this class was generated from the following file:

copyright by Pawel Biernacki

Vantaa 2022