Stack.def 948 B

12345678910111213141516171819202122232425262728
  1. DEFINITION MODULE Stack ;
  2. (* MC64 evaluation / activation stack. One element is one 8-byte slot.
  3. The stack grows downwards from TopOfMemory towards the heap/arena. *)
  4. EXPORT QUALIFIED Push, Pop, PushInt, PopInt, PushCard, PopCard,
  5. PushBool, PopBool, PushLongInt, PopLongInt, PushLongCard, PopLongCard,
  6. PushReal, PopReal, PushQuad, PopQuad, Reserve ;
  7. PROCEDURE Push (v: LONGCARD) ;
  8. PROCEDURE Pop () : LONGCARD ;
  9. PROCEDURE PushInt (v: INTEGER) ;
  10. PROCEDURE PopInt () : INTEGER ;
  11. PROCEDURE PushCard (v: CARDINAL) ;
  12. PROCEDURE PopCard () : CARDINAL ;
  13. PROCEDURE PushBool (v: BOOLEAN) ;
  14. PROCEDURE PopBool () : BOOLEAN ;
  15. PROCEDURE PushLongInt (v: LONGINT) ;
  16. PROCEDURE PopLongInt () : LONGINT ;
  17. PROCEDURE PushLongCard (v: LONGCARD) ;
  18. PROCEDURE PopLongCard () : LONGCARD ;
  19. PROCEDURE PushReal (v: REAL) ;
  20. PROCEDURE PopReal () : REAL ;
  21. PROCEDURE PushQuad (v: LONGREAL) ;
  22. PROCEDURE PopQuad () : LONGREAL ;
  23. PROCEDURE Reserve (n: CARDINAL) ;
  24. END Stack.