LRDE Tiger Compiler
1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
|
A generic map of metavariables. More...
#include <metavar-map.hh>
Public Member Functions | |
MetavarMap (const std::string &name) | |
Build a map of metavariables of kind name. | |
virtual | ~MetavarMap () |
std::string | show (unsigned key) |
Protected Types | |
typedef misc::map< unsigned, Data * > | map_type |
Metavariables. |
Protected Member Functions | |
virtual std::string | append_ (unsigned &key, Data *data) |
Append a metavariable to the map. | |
virtual Data * | take_ (unsigned key) |
Extract a metavariable. |
Protected Attributes | |
const std::string | name_ |
Name of the kind of variable. | |
map_type | map_ |
A generic map of metavariables.
|
protected |
Metavariables.
parse::MetavarMap< Data >::MetavarMap | ( | const std::string & | name | ) |
Build a map of metavariables of kind name.
|
virtual |
References assertion.
|
protectedvirtual |
Append a metavariable to the map.
std::string parse::MetavarMap< Data >::show | ( | unsigned | key | ) |
Generate a (concrete syntax) Tiger statement for metavariable number key (of kind Data
).
|
protectedvirtual |
Extract a metavariable.
|
protected |
|
protected |
Name of the kind of variable.