inter.inline.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #ifndef AFUN_INTER_INLINE_H
  2. #define AFUN_INTER_INLINE_H
  3. #include "inter.h"
  4. namespace aFuncore {
  5. inline Environment &Inter::getEnvironment() {
  6. return env;
  7. }
  8. inline void Inter::pushActivation(Activation *new_activation) {
  9. activation = new_activation;
  10. }
  11. inline Inter::InterStatus Inter::getStatus() const {
  12. return status;
  13. }
  14. inline bool Inter::isExit() const {
  15. return (status == inter_exit || status == inter_stop);
  16. }
  17. inline ProtectVarSpace *Inter::getProtectVarSpace() const {
  18. return env.protect;
  19. }
  20. inline VarSpace *Inter::getGlobalVarSpace() const {
  21. return env.global;
  22. }
  23. inline VarList *Inter::getGlobalVarlist() const {
  24. return env.global_varlist;
  25. }
  26. inline Activation *Inter::getActivation() const {
  27. return activation;
  28. }
  29. inline EnvVarSpace &Inter::getEnvVarSpace() {
  30. return env.envvar;
  31. }
  32. inline size_t Environment::operator++(){
  33. return ++reference;
  34. }
  35. inline size_t Environment::operator--(){
  36. return --reference;
  37. }
  38. inline size_t Environment::operator++(int){
  39. return reference++;
  40. }
  41. inline size_t Environment::operator--(int){
  42. return reference--;
  43. }
  44. }
  45. #endif //AFUN_INTER_INLINE_H