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::variable_with_value Class Referenceabstract

#include <chomik.h>

Inheritance diagram for chomik::variable_with_value:
Collaboration diagram for chomik::variable_with_value:

Public Types

enum class  actual_memory_representation_type {
  NONE , INTEGER , FLOAT , STRING ,
  CODE , ENUM
}
 

Public Member Functions

 variable_with_value (std::shared_ptr< signature > &&n)
 
virtual ~variable_with_value ()
 
std::string get_signature_item_representation (int item_index) const
 
std::string get_signature_item_type_name (int item_index) const
 
int get_amount_of_signature_items () const
 
virtual void report (std::ostream &s) const =0
 
virtual actual_memory_representation_type get_representation_type () const =0
 
std::string get_signature_string_representation () const
 
virtual int get_value_integer () const
 
virtual double get_value_float () const
 
virtual std::string get_value_string () const
 
virtual std::string get_value_enum () const
 
virtual void get_value_code (code &target) const
 
virtual void assign_value_integer (int v)
 
virtual void assign_value_float (double v)
 
virtual void assign_value_string (std::string v)
 
virtual void assign_value_enum (std::string v)
 
virtual void assign_value_code (const code &ci)
 
virtual std::string get_debug_type_name () const
 

Protected Attributes

std::shared_ptr< signatureactual_name
 

Detailed Description

This class is used to represent a variable with its value in a machine.

Member Enumeration Documentation

◆ actual_memory_representation_type

Enumerator
NONE 
INTEGER 
FLOAT 
STRING 
CODE 
ENUM 

Constructor & Destructor Documentation

◆ variable_with_value()

chomik::variable_with_value::variable_with_value ( std::shared_ptr< signature > && n)
inline

◆ ~variable_with_value()

virtual chomik::variable_with_value::~variable_with_value ( )
inlinevirtual

Member Function Documentation

◆ assign_value_code()

virtual void chomik::variable_with_value::assign_value_code ( const code & ci)
inlinevirtual

◆ assign_value_enum()

virtual void chomik::variable_with_value::assign_value_enum ( std::string v)
inlinevirtual

◆ assign_value_float()

virtual void chomik::variable_with_value::assign_value_float ( double v)
inlinevirtual

◆ assign_value_integer()

virtual void chomik::variable_with_value::assign_value_integer ( int v)
inlinevirtual

◆ assign_value_string()

virtual void chomik::variable_with_value::assign_value_string ( std::string v)
inlinevirtual

◆ get_amount_of_signature_items()

int chomik::variable_with_value::get_amount_of_signature_items ( ) const

◆ get_debug_type_name()

◆ get_representation_type()

◆ get_signature_item_representation()

std::string chomik::variable_with_value::get_signature_item_representation ( int item_index) const

◆ get_signature_item_type_name()

std::string chomik::variable_with_value::get_signature_item_type_name ( int item_index) const

◆ get_signature_string_representation()

std::string chomik::variable_with_value::get_signature_string_representation ( ) const

◆ get_value_code()

virtual void chomik::variable_with_value::get_value_code ( code & target) const
inlinevirtual

◆ get_value_enum()

virtual std::string chomik::variable_with_value::get_value_enum ( ) const
inlinevirtual

◆ get_value_float()

virtual double chomik::variable_with_value::get_value_float ( ) const
inlinevirtual

◆ get_value_integer()

virtual int chomik::variable_with_value::get_value_integer ( ) const
inlinevirtual

◆ get_value_string()

virtual std::string chomik::variable_with_value::get_value_string ( ) const
inlinevirtual

◆ report()

Member Data Documentation

◆ actual_name

std::shared_ptr<signature> chomik::variable_with_value::actual_name
protected

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

copyright by Pawel Biernacki

Vantaa 2022