|
hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
|
#include <type.H>


Classes | |
| struct | Member |
Public Types | |
| typedef std::vector< Member > | Members |
Public Types inherited from hobbes::MonoType | |
| typedef std::shared_ptr< MonoType > | ptr |
| typedef std::set< std::string > | TypeVarNames |
Public Member Functions | |
| void | show (std::ostream &out) const |
| const Members & | members () const |
| const MonoTypePtr & | member (const std::string &mn) const |
| unsigned int | index (const std::string &mn) const |
| const Member * | mmember (const std::string &mn) const |
| Member | headMember () const |
| MonoTypePtr | tailType () const |
| const Members & | alignedMembers () const |
| unsigned int | alignedIndex (const std::string &mn) const |
| unsigned int | size () const |
| bool | isTuple () const |
Public Member Functions inherited from hobbes::MonoTypeCase< Record > | |
| MonoTypeCase () | |
Public Member Functions inherited from hobbes::MonoType | |
| virtual | ~MonoType () |
| bool | operator== (const MonoType &rhs) const |
| int | case_id () const |
| template<typename Class , typename T , typename ... Args> | |
| MonoTypePtr | makeType (const Args &... args) |
Static Public Member Functions | |
| static Members | withExplicitPadding (const Members &, const std::string &pfx=".p") |
| static Members | withResolvedMemoryLayout (const Members &) |
| static MonoTypePtr | make (const Members &ms) |
| static MonoTypePtr | make (const MonoTypePtr &hty, const Members &tty) |
| static MonoTypePtr | make (const std::string &lbl, const MonoTypePtr &hty, const Members &tty) |
Static Public Attributes | |
| static const int | type_case_id = 7 |
Private Member Functions | |
| unsigned int | maxFieldAlignment () const |
| unsigned int | index (const Members &ms, const std::string &mn) const |
| Record (const Members &ms) | |
Static Private Member Functions | |
| static void | showRecord (std::ostream &, const Members &) |
| static std::string | showRecord (const Members &) |
Private Attributes | |
| Members | ms |
| Members | ams |
| unsigned int | maxFieldAlignmentM |
Friends | |
| class | MonoType |
Additional Inherited Members | |
Public Attributes inherited from hobbes::MonoType | |
| TypeVarNames | freeTVars |
| int | tgenCount |
| unsigned int | memorySize |
| ptr | unaliasedType |
Protected Member Functions inherited from hobbes::MonoType | |
| MonoType (int cid) | |
Static Protected Member Functions inherited from hobbes::MonoType | |
| template<typename Class , typename T , typename ... Args> | |
| static ptr | makeType (const Args &... args) |
| typedef std::vector<Member> hobbes::Record::Members |
|
private |
| unsigned int hobbes::Record::alignedIndex | ( | const std::string & | mn | ) | const |
| const Record::Members & hobbes::Record::alignedMembers | ( | ) | const |
| Record::Member hobbes::Record::headMember | ( | ) | const |
| unsigned int hobbes::Record::index | ( | const std::string & | mn | ) | const |
|
private |
| bool hobbes::Record::isTuple | ( | ) | const |
|
static |
|
static |
|
static |
|
private |
| const MonoTypePtr & hobbes::Record::member | ( | const std::string & | mn | ) | const |
| const Record::Members & hobbes::Record::members | ( | ) | const |
| const Record::Member * hobbes::Record::mmember | ( | const std::string & | mn | ) | const |
|
virtual |
Implements hobbes::MonoType.
|
staticprivate |
|
staticprivate |
| unsigned int hobbes::Record::size | ( | ) | const |
| MonoTypePtr hobbes::Record::tailType | ( | ) | const |
|
static |
|
static |
|
friend |
|
private |
|
mutableprivate |
|
private |
|
static |
1.8.13