;;;; $Id: package.lisp 242 2013-06-27 13:45:13Z jdanjou $
;;;; $URL: file:///project/cl-irc/svn/tags/0.9.2/package.lisp $

;;;; See the LICENSE file for licensing information.

(in-package :cl-user)

;; the exports list needs some cleanup/clarification/categorization
(eval-when (:execute :load-toplevel :compile-toplevel)
  (defpackage :cl-irc
      (:use :cl)
    (:nicknames :irc)
    (:export :read-message-loop
             :read-message
             :read-irc-message
             :connectedp
             :irc-message-event
             :start-background-message-handler
             :stop-background-message-handler
             :destructuring-arguments
             :&req
             :server-name
             :server-port
             :no-such-reply
             :irc-mode
             :boolean-value-mode
             :single-value-mode
             :list-value-mode
             :add-mode
             :remove-mode
             :has-mode-p
             :has-mode-value-p
             :get-mode
             :set-mode
             :unset-mode
             :apply-mode-changes
             :parse-mode-arguments
             :parse-raw-message
             :normalize-nickname
             :normalize-channel-name
             :name
             :normalized-name
             :topic
             :modes
             :visibility
             :user-count
             :users
             :network-stream
             :output-stream
             :client-stream
             :channels
             :add-hook
             :append-hook
             :remove-hook
             :remove-hooks
             :remove-all-hooks
             :add-default-hooks
             :get-hooks
             :make-user
             :nickname
             :normalized-nickname
             :username
             :hostname
             :realname
             :change-nickname
             :irc-message
             :source
             :user
             :password
             :host
             :command
             :arguments
             :trailing-argument
             :connection
             :received-time
             :raw-message-string
             :make-connection
             :make-channel
             :channel
             :client-log
             :find-channel
             :find-reply-name
             :remove-channel
             :remove-all-channels
             :add-channel
             :find-user
             :add-user
             :remove-all-users
             :remove-user
             :self-message-p
             :user-eq-me-p
             :mask-matches-p
             :pass
             :nick
             :user-
             :oper
             :mode
             :op
             :deop
             :voice
             :devoice
             :ban
             :unban
             :service
             :quit
             :squit
             :join
             :part
             :part-all
             :topic-
             :names
             :list-
             :invite
             :kick
             :privmsg
             :notice
             :motd-
             :lusers
             :version
             :stats
             :links
             :time-
             :connect
             :trace-
             :admin
             :info
             :servlist
             :squery
             :who
             :whois
             :whowas
             :kill
             :ping
             :pong
             :error-
             :away
             :rehash
             :die
             :restart-
             :summon
             :users-
             :wallops
             :userhost
             :ison
             ;; DCC specific dictionary
             :dcc-connection
             :dcc-chat-connection
             :irc-connection
             :close-on-main
             :remote-user
             :dcc-close
             :dcc-message
             :dcc-message-event
             :make-dcc-chat-connection
             :ctcp-chat-initiate
             :dcc-request-reject
             :dcc-request-accept
             :dcc-request-cancel
             )))

