mach.scm 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. (define-module (mach)
  2. #:export (port
  3. task
  4. vm-size
  5. vm-address
  6. msg-option
  7. ipc-space
  8. port-mscount
  9. port-seqno
  10. msg-seqno
  11. port-delta
  12. <msg-type>
  13. msg-type-number
  14. msg-type-name
  15. vm-offset
  16. msg-size
  17. msg-timeout
  18. vm-task
  19. port-urefs
  20. port-msgcount
  21. port-rights
  22. msg-bits
  23. msg-id
  24. task-self
  25. with-port-deallocate
  26. with-port-destroy
  27. with-port
  28. port-type-is?
  29. port-pointer
  30. port-valid?
  31. port-allocate
  32. port-deallocate!
  33. port-destroy!
  34. port-mod-refs!
  35. port-move-member!
  36. port-insert-right!
  37. <port-type>
  38. port-request-notification!
  39. task-get-special-port
  40. task-get-bootstrap-port
  41. msg-server-timeout
  42. msg-server
  43. mmap-prot-flags
  44. mmap-map-flags
  45. mmap
  46. munmap
  47. vm-allocate
  48. vm-deallocate
  49. reply-port
  50. port-allocate-name
  51. port-names
  52. port-rename
  53. port-get-refs
  54. port-extract-right!
  55. port-set-mscount!
  56. port-set-qlimit!
  57. +qlimit-default+
  58. +qlimit-min+
  59. +qlimit-max+
  60. port-set-seqno!
  61. port-get-set-status
  62. port-get-receive-status
  63. port-status-has-send-rights?
  64. <port-status-struct>
  65. port-status-has-port-deleted-notification?
  66. port-status-has-no-senders-notification?
  67. port-status-get-set
  68. port-status-get-mscount
  69. port-status-get-queue-limit
  70. port-status-get-msgcount
  71. port-status-get-so-rights
  72. msg-add-type
  73. message-spec
  74. message
  75. msg-spec
  76. msg-fields
  77. spec-id
  78. spec-fields
  79. spec-size
  80. send-message
  81. receive-message
  82. validate-message
  83. get-message
  84. get-message-id
  85. get-message-local-port
  86. get-message-remote-port
  87. make-message
  88. make-message-spec
  89. ;; Some things not exported in the CL port
  90. &port-invalid make-port-invalid port-invalid?
  91. port-invalid-expression port-invalid-return)
  92. #:use-module (oop goops)
  93. #:use-module (rnrs base)
  94. #:use-module (rnrs arithmetic fixnums)
  95. #:use-module (rnrs exceptions)
  96. #:use-module (rnrs conditions)
  97. #:use-module (hurd-cl-compat))
  98. (read-set! keywords 'prefix)
  99. (define-syntax-rule (include-from-paths x ...)
  100. (begin (include-from-path x)
  101. ...))
  102. (define-syntax-rule (in-package #:mach)
  103. (begin #f))
  104. (include-from-paths
  105. "mach/msg-type-name.lisp"
  106. "mach/task-special-ports.lisp"
  107. "mach/port-right.lisp"
  108. "mach/port-type.lisp"
  109. "mach/port.lisp"
  110. "mach/msg-notify.lisp"
  111. "mach/msg-option.lisp"
  112. "mach/msg-type.lisp"
  113. "mach/types.lisp"
  114. "mach/msg-header.lisp"
  115. "mach/port-creation.lisp"
  116. "mach/port-destruction.lisp"
  117. "mach/task.lisp"
  118. "mach/port-names.lisp"
  119. "mach/port-rights.lisp"
  120. "mach/port-move.lisp"
  121. "mach/port-status.lisp"
  122. "mach/port-receive-rights.lisp"
  123. "mach/port-sets.lisp"
  124. "mach/port-request-notifications.lisp"
  125. "mach/msg-server.lisp"
  126. "mach/message.lisp"
  127. "mach/functions.lisp"
  128. "mach/macros.lisp"
  129. "mach/mmap.lisp"
  130. "mach/vm-allocate.lisp")