hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
Classes | Namespaces | Typedefs | Functions
module.H File Reference
#include <hobbes/lang/type.H>
#include <hobbes/lang/expr.H>
#include <hobbes/util/ptr.H>
#include <hobbes/util/lannotation.H>
#include <memory>
#include <iostream>
#include <string>
#include <vector>
Include dependency graph for module.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  hobbes::ModuleDef
 
struct  hobbes::ModuleDefCase< Case >
 
class  hobbes::MImport
 
class  hobbes::MTypeDef
 
class  hobbes::MVarTypeDef
 
class  hobbes::MVarDef
 
class  hobbes::ClassDef
 
class  hobbes::InstanceDef
 
class  hobbes::Module
 

Namespaces

 hobbes
 

Typedefs

typedef std::shared_ptr< ModuleDef > hobbes::ModuleDefPtr
 
typedef std::vector< ModuleDefPtr > hobbes::ModuleDefs
 
typedef std::shared_ptr< MVarTypeDef > hobbes::MVarTypeDefPtr
 
typedef std::vector< MVarTypeDefPtr > hobbes::MVarTypeDefs
 
typedef std::shared_ptr< MVarDef > hobbes::MVarDefPtr
 
typedef std::vector< MVarDefPtr > hobbes::MVarDefs
 
typedef std::pair< str::seq, str::seqhobbes::CFunDepDef
 
typedef std::vector< CFunDepDef > hobbes::CFunDepDefs
 
typedef std::shared_ptr< ClassDef > hobbes::ClassDefPtr
 
typedef std::vector< ClassDefPtr > hobbes::ClassDefs
 
typedef std::shared_ptr< InstanceDef > hobbes::InstanceDefPtr
 
typedef std::vector< InstanceDefPtr > hobbes::InstanceDefs
 
typedef std::shared_ptr< Module > hobbes::ModulePtr
 
typedef std::vector< ModulePtr > hobbes::Modules
 

Functions

MVarDefs hobbes::substitute (const MonoTypeSubst &, const MVarDefs &)
 
std::string hobbes::show (const Module &m)
 
std::string hobbes::show (const Module *m)
 
std::string hobbes::show (const ModulePtr &m)
 
std::string hobbes::show (const MTypeDef *)
 
std::string hobbes::show (const ClassDef &cd)
 
std::string hobbes::show (const ClassDef *cd)
 
std::string hobbes::show (const InstanceDef &id)
 
std::string hobbes::show (const InstanceDef *id)
 
std::string hobbes::show (const ModuleDefPtr &md)
 
std::string hobbes::show (const CFunDepDef &fundep)
 
std::string hobbes::show (const CFunDepDefs &fundeps)