Advertisement
Guest User

Untitled

a guest
Feb 18th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
OCaml 2.97 KB | None | 0 0
  1. [simon@guadeloupe src]$ ocamlfind ocamlc -c -g -bin-annot -thread -package core -package ppx_deriving.show -I src -I lib -o scribbleAST.cmo -dsource scribbleAST.ml
  2. findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/simon/.opam/4.02.3/lib/ocaml/compiler-libs, /home/simon/.opam/4.02.3/lib/ocaml
  3. type name = string
  4. type alias = string
  5. type ext_name = string
  6. type src = string
  7. type payload_ty = string
  8. type message = (name* payload_ty list)[@@deriving show]
  9. type import =
  10.   [ `ImportBasic of name  | `ImportAlias of (name* alias)
  11.   | `ImportMember of (name* name)
  12.   | `ImportMemberAlias of (name* name* alias) ][@@deriving show]
  13. type role =
  14.   [ `RoleDecl of name  | `RoleDeclAlias of (name* alias)
  15.   | `SelfRoleDecl of name ][@@deriving show]
  16. type role_instantiation =
  17.   [ `RoleInstantiation of name  | `RoleInstantiationNew of name
  18.   | `RoleInstantiationAlias of (name* alias) ][@@deriving show]
  19. type param =
  20.   [ `TypeParam of name  | `TypeParamAlias of (name* alias)
  21.   | `SigParam of name  | `SigParamAlias of (name* alias) ][@@deriving show]
  22. type argument =
  23.   [ `MessageSigArg of message  | `MessageSigArgAlias of (message* alias)
  24.   | `IdentArg of name  | `IdentAliasArg of (name* alias) ][@@deriving show]
  25. type payload = (payload_ty* ext_name* src* name)[@@deriving show]
  26. type from_name = name[@@deriving show]
  27. type to_names = name list[@@deriving show]
  28. type argument_instantiation = message[@@deriving show]
  29. type message_transfer = (message* from_name* to_names)[@@deriving show]
  30. type global_interrupt = (message list* name)[@@deriving show]
  31. type global_interaction =
  32.   [ `GlobalMessageTransfer of message_transfer
  33.   | `GlobalChoice of (name* global_interaction_block list)
  34.   | `GlobalRecursion of (name* global_interaction_block)
  35.   | `GlobalContinue of name
  36.   | `GlobalParallel of global_interaction_block list
  37.   | `GlobalInterruptible of
  38.       (global_interaction_block* name option* global_interrupt list)
  39.   | `GlobalDo of (name* argument_instantiation list* role_instantiation list) ]
  40. [@@deriving show]
  41. and global_interaction_block = global_interaction list[@@deriving show]
  42. type global_protocol =
  43.   (name* param list* role list* global_interaction_block)[@@deriving show]
  44. type local_interaction =
  45.   [ `LocalSend of (message* to_names)
  46.   | `LocalReceive of (message* from_name)
  47.   | `LocalChoice of (name* local_interaction_block list)
  48.   | `LocalRecursion of (name* local_interaction_block)
  49.   | `LocalContinue of name  | `LocalParallel of local_interaction_block list
  50.   | `LocalDo of (name* argument_instantiation list* role_instantiation list) ]
  51. [@@deriving show]
  52. and local_interaction_block = local_interaction list[@@deriving show]
  53. type local_protocol = (name* param list* role list* local_interaction_block)
  54. [@@deriving show]
  55. type protocol =
  56.   [ `GlobalProtocol of global_protocol  | `LocalProtocol of local_protocol ]
  57. [@@deriving show]
  58. type scribble_module = (name* import list* payload list* protocol list)
  59. [@@deriving show]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement