New macro: with-socket
[cl-zmq.git] / package.lisp
blob963e721aabdc78eb43c1c11706674fd8d3fca235
1 ;; Copyright 2009 Vitaly Mayatskikh <v.mayatskih@gmail.com>
2 ;;
3 ;; This file is a part of CL-ZMQ
4 ;;
5 ;; CL-ZMQ is free software: you can redistribute it and/or modify
6 ;; it under the terms of the GNU General Public License as published by
7 ;; the Free Software Foundation, either version 3 of the License, or
8 ;; (at your option) any later version.
9 ;;
10 ;; CL-ZMQ is distributed in the hope that it will be useful,
11 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 ;; GNU General Public License for more details.
15 ;; You should have received a copy of the GNU General Public License
16 ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
18 (defpackage #:cl-zmq
19 (:nicknames :zmq)
20 (:use :cl :cffi)
21 (:shadow #:sleep #:close)
22 (:export
23 ;; constants
24 #:max-vsm-size
25 #:gap
26 #:delimiter
27 #:vsm
28 #:hwm
29 #:lwm
30 #:swap
31 #:affinity
32 #:identity
33 #:subscribe
34 #:unsubscribe
35 #:rate
36 #:recovery-ivl
37 #:mcast-loop
38 #:noblock
39 #:noflush
40 #:p2p
41 #:pub
42 #:sum
43 #:req
44 #:rep
46 ;; structure
47 #:msg
49 ;; functions
50 #:make-message
51 #:free-message
52 #:msg-init
53 #:msg-init-size
54 #:msg-init-data
55 #:msg-close
56 #:msg-move
57 #:msg-copy
58 #:msg-data
59 #:msg-size
60 #:msg-type
61 #:init
62 #:term
63 #:socket
64 #:close
65 #:setsockopt
66 #:bind
67 #:connect
68 #:send
69 #:flush
70 #:recv
71 #:stopwatch-start
72 #:stopwatch-stop
73 #:sleep
75 ;; macros
76 #:with-socket))
78 (in-package :cl-zmq)
80 (eval-when (:compile-toplevel :load-toplevel :execute)
81 (define-foreign-library zmq
82 (:unix (:or "libzmq.so.0.0.0" "libzmq.so"))
83 (t "libzmq")))
85 (use-foreign-library zmq)