package tiny_languages

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module PcodeSource

Sourcetype csp =
  1. | Wri
  2. | Wrc
  3. | Wrb
  4. | Wrs of string
  5. | Wln
  6. | Rdi
  7. | Rdc
  8. | Rln
  9. | Rnd
  10. | Eol
Sourcetype instr =
  1. | Ldc of int
  2. | Lod of int * int
  3. | Lda of int * int
  4. | Str of int * int
  5. | Ind of int
  6. | Sto
  7. | Ldm of int
  8. | Stm of int
  9. | Ixa of int
  10. | Inc of int
  11. | Chk of int * int
  12. | Adi
  13. | Sbi
  14. | Mpi
  15. | Dvi
  16. | Mod
  17. | Ngi
  18. | Abi
  19. | Sqi
  20. | Odd
  21. | Equ
  22. | Neq
  23. | Les
  24. | Leq
  25. | Grt
  26. | Geq
  27. | And
  28. | Ior
  29. | Not
  30. | Ujp of int
  31. | Fjp of int
  32. | Mst of int
  33. | Cup of int * int
  34. | Ent of int
  35. | Retp
  36. | Retf
  37. | Csp of csp
  38. | Stp
Sourcetype vtype =
  1. | Vint
  2. | Vbool
  3. | Vchar
  4. | Varray of int * int * vtype
  5. | Vrecord of (string * int * vtype) list
Sourcetype variable = {
  1. vname : string;
  2. offset : int;
  3. vtype : vtype;
  4. by_ref : bool;
  5. param : bool;
}
Sourcetype procedure = {
  1. pname : string;
  2. level : int;
  3. parent : int;
  4. first : int;
  5. last : int;
  6. variables : variable list;
}
Sourcetype program = {
  1. code : instr array;
  2. lines : int array;
  3. statements : int array;
  4. procedures : procedure array;
}
Sourceval mark : int
Sourceval show : instr -> string
Sourceval listing : program -> string