Semantic Object Name.
More...
#include <sosimp.h>
|
| | SON (std::string p_name, bool p_exec=false) |
| | Ctor from a string as name.
|
| |
|
| SON (const SON &p_other) |
| | Copy ctor.
|
| |
|
| ~SON () override=default |
| | Dtor.
|
| |
|
| SON (SON &&)=delete |
| |
|
SON & | operator= (const SON &)=delete |
| |
|
SON & | operator= (SON &&)=delete |
| |
|
std::string | getName () const |
| | Getter for name_.
|
| |
| SON * | dup () const override |
| | Creates a new instance as copy following the red book definition.
|
| |
| std::string | opequalequal () const override |
| | String representation for operators '==' and 'pstack'.
|
| |
| std::string | opequal () const override |
| | String representation of object for operators '=', 'cvs' and 'stack'.
|
| |
| OTCode | ot () const override |
| | Returns an OTCode.
|
| |
| std::string_view | type () const override |
| | Returns a type name.
|
| |
| bool | equal (const SO *p_other) const override |
| | Checks if this SO is equal to another SO.
|
| |
| size_t | getSize () const override |
| | Returns the size of the SO.
|
| |
|
| SO () |
| | Ctor.
|
| |
| | SO (bool p_exec) |
| | Ctor.
|
| |
|
| SO (const SO &p_other) |
| | Copy ctor.
|
| |
| virtual | ~SO ()=default |
| | Virtual dtor.
|
| |
|
| SO (SO &&)=delete |
| |
|
SO & | operator= (const SO &)=delete |
| |
|
SO & | operator= (SO &&)=delete |
| |
|
bool | getExec () const |
| | Getter for exec_.
|
| |
|
void | setExec (bool p_exec) |
| | Setter for exec_.
|
| |
| virtual SO * | clone () const |
| | Creates a new instance as copy with deep cloning.
|
| |
| virtual bool | gt (OpError &p_ec, const SO *) const |
| | Greater than.
|
| |
| virtual bool | ge (OpError &p_ec, const SO *) const |
| | Greater or equal.
|
| |
|
| Counter (Counter< SO > &&)=delete |
| |
|
Counter< SO > & | operator= (const Counter< SO > &)=delete |
| |
|
Counter< SO > & | operator= (Counter< SO > &&)=delete |
| |
|
| static bool | otcodeIsName (OTCode p_code) |
| | Checks if an OTCode represents a name type (N or Nx).
|
| |
|
static size_t | getTotalCounter () |
| | Static getter for totaly created objects.
|
| |
|
static size_t | getAliveCounter () |
| | Static getter for objects alive.
|
| |
|
static size_t | getWatermarkCounter () |
| | Static getter for the object counter watermark.
|
| |
|
| bool | invariant () const noexcept override |
| | Checks class invariants.
|
| |
|
| Counter () |
| | Ctor.
|
| |
|
| Counter (const Counter< SO > &) |
| | Copy ctor.
|
| |
|
| ~Counter () |
| | Dtor.
|
| |
|
| ~DbC ()=default |
| | Protected dtor.
|
| |
|
|
std::string | name_ |
| | The name.
|
| |
Semantic Object Name.
- Invariant
- name_ not empty.
◆ SON()
| SON::SON |
( |
std::string |
p_name, |
|
|
bool |
p_exec = false |
|
) |
| |
|
inlineexplicit |
Ctor from a string as name.
- Parameters
-
| [in] | p_name | The new name. Must not be empty. |
| [in] | p_exec | If true, the object is marked as executable. |
◆ dup()
Creates a new instance as copy following the red book definition.
- Returns
- SO * ... A copy.
Implements SO.
◆ equal()
| bool SON::equal |
( |
const SO * |
p_other | ) |
const |
|
inlineoverridevirtual |
Checks if this SO is equal to another SO.
Equality means:
SOL und SOM are always equal.
For SOD, SOF and SOK, share_ptr<> points to the same object.
For SOA, share_ptr<> points to the same object, but empty arrays are equal nonetheless.
For SOO and SOo the function pointer must be the same.
Otherwise the value must be the same, even for SOS with shared_ptr<>.
- Precondition
- parameter != nullptr
- Returns
- bool ... true if the SO's are of the same type and equal
- See also
- Will be used directly and unchanged as operator eq
- Parameters
-
| [in] | p_other | The object to compare with. |
Implements SO.
◆ getSize()
| size_t SON::getSize |
( |
| ) |
const |
|
inlineoverridevirtual |
Returns the size of the SO.
Default implementation returns 1 (for simple objects).
Override in subclasses to return the actual size
(e.g., length of a string, number of elements in a composite object).
Reimplemented from SO.
◆ invariant()
| bool SON::invariant |
( |
| ) |
const |
|
inlineoverrideprotectedvirtualnoexcept |
Checks class invariants.
- Returns
- bool ... Indicates whether the class invariants are maintained.
Reimplemented from DbC.
◆ opequal()
| std::string SON::opequal |
( |
| ) |
const |
|
inlineoverridevirtual |
String representation of object for operators '=', 'cvs' and 'stack'.
- Returns
- std::string ... The representation.
Implements SO.
◆ opequalequal()
| std::string SON::opequalequal |
( |
| ) |
const |
|
inlineoverridevirtual |
String representation for operators '==' and 'pstack'.
This function attempts to produce a result that resembles the red book syntax
for creating the object.
- Returns
- std::string ... The representation.
Reimplemented from SO.
◆ ot()
Returns an OTCode.
A "manual" implementation of polymorphism, where C++-polymorphisms fail
- Returns
- OTCode ... The OTCode of the instance.
Implements SO.
◆ otcodeIsName()
| static bool SON::otcodeIsName |
( |
OTCode |
p_code | ) |
|
|
inlinestatic |
Checks if an OTCode represents a name type (N or Nx).
- Parameters
-
| [in] | p_code | The OTCode to check. |
- Returns
- bool ... true, if the OTCode represents a name type, otherwise false.
◆ type()
| std::string_view SON::type |
( |
| ) |
const |
|
inlineoverridevirtual |
Returns a type name.
- Returns
- std::string_view ... The type name of the instance.
Implements SO.
The documentation for this class was generated from the following file: