| Bash++
    Bash++ compiler internal documentation | 
An object assignment statement in Bash++. More...
#include <bpp.h>


| Public Member Functions | |
| bpp_object_assignment () | |
| void | set_lvalue (const std::string &lvalue) | 
| void | set_rvalue (const std::string &rvalue) | 
| void | set_lvalue_nonprimitive (bool is_nonprimitive) | 
| void | set_rvalue_nonprimitive (bool is_nonprimitive) | 
| void | set_lvalue_object (std::shared_ptr< bpp_entity > object) | 
| void | set_rvalue_object (std::shared_ptr< bpp_entity > object) | 
| void | set_adding (bool is_adding) | 
| void | set_rvalue_array (bool is_array) | 
| std::string | get_lvalue () const | 
| std::string | get_rvalue () const | 
| bool | lvalue_is_nonprimitive () const | 
| bool | rvalue_is_nonprimitive () const | 
| std::shared_ptr< bpp_entity > | get_lvalue_object () const | 
| std::shared_ptr< bpp_entity > | get_rvalue_object () const | 
| bool | is_adding () const | 
| bool | rvalue_is_array () const | 
|  Public Member Functions inherited from bpp::bpp_string | |
| bpp_string () | |
| void | add_code (const std::string &code, bool add_newline=true) override | 
| Add code to the primary buffer. | |
| void | add_code_to_previous_line (const std::string &code) override | 
| Add code to the pre-code buffer. | |
| void | add_code_to_next_line (const std::string &code) override | 
| Add code to the post-code buffer. | |
| std::string | get_code () const override | 
| Return the contents of the main code buffer as a string. | |
| std::string | get_pre_code () const override | 
| Return the contents of the pre-code buffer as a string. | |
| std::string | get_post_code () const override | 
| Return the contents of the post-code buffer as a string. | |
|  Public Member Functions inherited from bpp::bpp_code_entity | |
| bpp_code_entity () | |
| bool | add_object (std::shared_ptr< bpp_object > object, bool make_local=false) override | 
| Add an object to the code entity. | |
| virtual void | flush_nextline_buffer () | 
| virtual void | flush_postline_buffer () | 
| virtual void | flush_code_buffers () | 
| virtual void | clear_all_buffers () | 
|  Public Member Functions inherited from bpp::bpp_entity | |
| virtual | ~bpp_entity ()=default | 
| virtual bool | add_class (std::shared_ptr< bpp_class > class_) | 
| Add a class to this entity's list of classes. | |
| virtual std::shared_ptr< bpp_class > | get_class () | 
| virtual std::string | get_address () const | 
| virtual void | set_name (const std::string &name) | 
| virtual std::string | get_name () const | 
| virtual std::weak_ptr< bpp::bpp_class > | get_containing_class () | 
| Get the class which contains this entity. | |
| virtual bool | set_containing_class (std::weak_ptr< bpp::bpp_class > containing_class) | 
| virtual void | inherit (std::shared_ptr< bpp_entity > parent) | 
| Inherit from a parent entity. | |
| virtual void | inherit (std::shared_ptr< bpp_class > parent) | 
| void | set_definition_position (const std::string &file, uint64_t line, uint64_t column) | 
| void | add_reference (const std::string &file, uint64_t line, uint64_t column) | 
| bpp::SymbolPosition | get_initial_definition () const | 
| std::list< bpp::SymbolPosition > | get_references () const | 
| std::unordered_map< std::string, std::shared_ptr< bpp_class > > | get_classes () const | 
| std::unordered_map< std::string, std::shared_ptr< bpp_object > > | get_objects () const | 
| std::shared_ptr< bpp_class > | get_class (const std::string &name) | 
| std::shared_ptr< bpp_object > | get_object (const std::string &name) | 
| std::shared_ptr< bpp_class > | get_parent () const | 
| Private Attributes | |
| std::string | lvalue = "" | 
| std::string | rvalue = "" | 
| bool | lvalue_nonprimitive = false | 
| bool | rvalue_nonprimitive = false | 
| std::shared_ptr< bpp_entity > | lvalue_object | 
| std::shared_ptr< bpp_entity > | rvalue_object | 
| bool | adding = false | 
| bool | rvalue_array = false | 
| Additional Inherited Members | |
|  Protected Attributes inherited from bpp::bpp_code_entity | |
| std::shared_ptr< std::ostream > | code = std::make_shared<std::ostringstream>() | 
| std::string | nextline_buffer = "" | 
| std::string | postline_buffer = "" | 
| bool | buffers_flushed = false | 
|  Protected Attributes inherited from bpp::bpp_entity | |
| std::string | name = "" | 
| std::unordered_map< std::string, std::shared_ptr< bpp_class > > | classes | 
| A map of class names to class objects within this entity. | |
| std::unordered_map< std::string, std::shared_ptr< bpp_object > > | objects | 
| A map of object names to bpp_objects within this entity. | |
| std::unordered_map< std::string, std::shared_ptr< bpp_object > > | local_objects | 
| Like objects, but only for objects whose scope is local to this entity. | |
| std::shared_ptr< bpp_class > | type = nullptr | 
| std::weak_ptr< bpp_class > | containing_class | 
| std::vector< std::shared_ptr< bpp_class > > | parents | 
| bpp::SymbolPosition | initial_definition | 
| std::list< bpp::SymbolPosition > | references | 
An object assignment statement in Bash++.
The 'bpp_' prefix signifies that this is used to parse a statement type which is unique to Bash++
| bpp::bpp_object_assignment::bpp_object_assignment | ( | ) | 
| std::string bpp::bpp_object_assignment::get_lvalue | ( | ) | const | 
| std::shared_ptr< bpp_entity > bpp::bpp_object_assignment::get_lvalue_object | ( | ) | const | 
| std::string bpp::bpp_object_assignment::get_rvalue | ( | ) | const | 
| std::shared_ptr< bpp_entity > bpp::bpp_object_assignment::get_rvalue_object | ( | ) | const | 
| bool bpp::bpp_object_assignment::is_adding | ( | ) | const | 
| bool bpp::bpp_object_assignment::lvalue_is_nonprimitive | ( | ) | const | 
| bool bpp::bpp_object_assignment::rvalue_is_array | ( | ) | const | 
| bool bpp::bpp_object_assignment::rvalue_is_nonprimitive | ( | ) | const | 
| void bpp::bpp_object_assignment::set_adding | ( | bool | is_adding | ) | 
| void bpp::bpp_object_assignment::set_lvalue | ( | const std::string & | lvalue | ) | 
| void bpp::bpp_object_assignment::set_lvalue_nonprimitive | ( | bool | is_nonprimitive | ) | 
| void bpp::bpp_object_assignment::set_lvalue_object | ( | std::shared_ptr< bpp_entity > | object | ) | 
| void bpp::bpp_object_assignment::set_rvalue | ( | const std::string & | rvalue | ) | 
| void bpp::bpp_object_assignment::set_rvalue_array | ( | bool | is_array | ) | 
| void bpp::bpp_object_assignment::set_rvalue_nonprimitive | ( | bool | is_nonprimitive | ) | 
| void bpp::bpp_object_assignment::set_rvalue_object | ( | std::shared_ptr< bpp_entity > | object | ) | 
| 
 | private | 
| 
 | private | 
| 
 | private | 
| 
 | private | 
| 
 | private | 
| 
 | private | 
| 
 | private | 
| 
 | private |