/LispEnvironment.h
https://bitbucket.org/hardtack/resoup · C Header · 33 lines · 24 code · 1 blank · 8 comment · 0 complexity · 70c4c0b9d96f0c027efb544ad10bf2f8 MD5 · raw file
- /*
- * LispEnvironment.h
- * Resoup
- *
- * Created by ??? on 10. 8. 17..
- * Copyright 2010 Unplug. All rights reserved.
- *
- */
- #ifndef _LISP_ENVIRONMENT_H_
- #define _LISP_ENVIRONMENT_H_
- #include "LispSymbolValuePair.h"
- #include "LispSymbol.h"
- #include "Exceptions.h"
- #include "LispObject.h"
- class LispEnvironment{
- private:
- LispSymbolValuePair **symbols;
- LispEnvironment *parent;
- int size;
- static int stackSize;
- void setOperatorsAndEtc(LispEnvironment *env);
- LispSymbolValuePair* getSymbolPointer(const char *name)throw (SymbolNotFoundException &);
- public:
- LispEnvironment(LispEnvironment *parent);
- ~LispEnvironment();
- void addSymbolValuePair(LispSymbolValuePair *pair);
- LispObject* findObject(LispSymbol *symbol)throw (SymbolNotFoundException &);
- LispSymbolValuePair** getSymbolValuePairDoublePointer(const char *name)throw (SymbolNotFoundException &);
- void show();
- void show(const unsigned short indent);
- };
- #endif