arbeit
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

Grinder.h

Go to the documentation of this file.
00001 //------------------------------------------------------------------------
00002 //
00003 //   Joe Kniss
00004 //     3-20-03
00005 //                   ________    ____   ___ 
00006 //                  |        \  /    | /  /
00007 //                  +---+     \/     |/  /
00008 //                  +--+|  |\    /|     < 
00009 //                  |  ||  | \  / |  |\  \ 
00010 //                  |      |  \/  |  | \  \ 
00011 //                   \_____|      |__|  \__\
00012 //                       Copyright  2003 
00013 //                      Joe Michael Kniss
00014 //                   <<< jmk@cs.utah.edu >>>
00015 //               "All Your Base are Belong to Us"
00016 //-------------------------------------------------------------------------
00017 
00018 /// Grinder.h
00019 
00020 /// everything you need to run the grinder
00021 
00022 #ifndef __GRINDER_DOT_H
00023 #define __GRINDER_DOT_H
00024 
00025 #include "Crank.h"
00026 #include "Tape.h"
00027 #include "GrinderKeys.h"
00028 #include "GrinderCppOps.h"
00029 
00030 /// Singleton, the brain of the system, handles IR and Symbol table
00031 class Grinder {
00032 public:
00033    static Grinder &instance() { return _instance; }
00034 
00035 protected:
00036    Grinder() {}
00037    Grinder(const Grinder &g);
00038    static Grinder _instance;
00039 };
00040 
00041 #endif

Send questions, comments, and bug reports to:
jmk