ForSyDe::abst_ext< T > Class Template Reference

Absent-extended data types. More...

#include <abst_ext.hpp>

Public Member Functions

 abst_ext (const T &val)
 The constructor with a present value.
 
 abst_ext ()
 The constructor with an absent value.
 
from_abst_ext (const T &defval) const
 Converts a value from an extended value, returning a default value if absent.
 
unsafe_from_abst_ext () const
 Unsafely converts a value from an extended value assuming it is present.
 
void set_abst ()
 Sets absent.
 
void set_val (const T &val)
 Sets the value.
 
bool is_absent () const
 Checks for the absence of a value.
 
bool is_present () const
 Checks for the presence of a value.
 
bool operator== (const abst_ext &rs) const
 Checks for the equivalence of two absent-extended values.
 

Friends

from_abst_ext (const abst_ext &absval, const T &defval)
 Converts a value from an extended value, returning a default value if absent.
 
unsafe_from_abst_ext (const abst_ext &absval)
 Unsafely converts a value from an extended value assuming it is present.
 
void set_abst (abst_ext &absval)
 Sets absent.
 
void set_val (abst_ext &absval, const T &val)
 Sets the value.
 
bool is_absent (const abst_ext &absval)
 Checks for the absence of a value.
 
bool is_present (const abst_ext &absval)
 Checks for the presence of a value.
 
std::ostream & operator<< (std::ostream &os, const abst_ext &abst_ext)
 Overload the streaming operator to enable SystemC communiation.
 

Detailed Description

template<typename T>
class ForSyDe::abst_ext< T >

Absent-extended data types.

This template class extends a type T to its absent-extended version. Values of this type could be either absent, or present with a specific value.


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