il::type Class Reference

Parent class of all the concrete types. More...

#include <type.h>

Inheritance diagram for il::type:
il::array_type il::base_type il::complex_type il::enum_type il::function_type il::pointer_type il::record_type il::vector_type

List of all members.

Classes

struct  type_eq
struct  type_hash

Public Member Functions

void set_attribute (type_attribute_kind attrib, type *k, type *v)
type_attribute_kind get_attribute ()
typeget_adt_key_type ()
typeget_adt_value_type ()
bool is_abstract_data_type ()
virtual bool operator== (const type &other)=0
size_t hash ()
virtual void print ()
virtual string to_string () const
virtual typeget_deref_type () const
virtual typeget_inner_type ()
bool is_base_or_enum_type () const
bool is_char_type () const
bool is_array_type () const
virtual bool is_void_type () const
bool is_void_star_type () const
virtual string get_typedef_name ()
virtual bool is_pointer_type () const
virtual bool is_constarray_type () const
virtual bool is_vararray_type () const
virtual bool is_enum_type () const
virtual bool is_record_type () const
virtual bool is_vector_type () const
virtual bool is_complex_type () const
virtual bool is_base_type () const
virtual bool is_function_type () const
virtual int get_size ()
virtual int get_asize ()
virtual bool is_signed_type () const
virtual void print_kind () const

Static Public Member Functions

static void uniquify_loaded_types ()
static void clear ()
static typeget_type_from_name (string name)
static void insert_type (string name, type *t)
static void register_loaded_typeref (type **t)

Protected Member Functions

void rehash_begin ()
void rehash_end ()

Static Protected Member Functions

static typeget_instance (type *t)

Protected Attributes

int size
int asize
string typedef_name
size_t hash_c

Static Protected Attributes

static unordered_set< type
*, type_hash, type_eq
instances
static set< type ** > unresolved_types

Friends

class boost::serialization::access
ostream & operator<< (ostream &os, const type &obj)

Detailed Description

Parent class of all the concrete types.


Member Function Documentation

type * il::type::get_instance ( type t  )  [static, protected]

Helper to make() methods that returns the unique instance of the given type instance.


The documentation for this class was generated from the following files:
Generated on Sun Oct 17 14:01:28 2010 by  doxygen 1.6.3