Move package definitions from .i file to separate lisp file
[cl-cudd.git] / package.lisp
blobdd9b349e50250067fbb2c78ca629ef9e15d52045
1 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10; -*-
2 ;;;
3 ;;; package.lisp --- CUDD wrapper package definitions
5 ;; Copyright (C) 2010 Utz-Uwe Haus <lisp@uuhaus.de>
6 ;;
7 ;; $Id:$
8 ;;
9 ;; This code is free software; you can redistribute it and/or modify
10 ;; it under the terms of the version 3 of the GNU General
11 ;; Public License as published by the Free Software Foundation, as
12 ;; clarified by the prequel found in LICENSE.Lisp-GPL-Preface.
14 ;; This code is distributed in the hope that it will be useful, but
15 ;; without any warranty; without even the implied warranty of
16 ;; merchantability or fitness for a particular purpose. See the GNU
17 ;; Lesser General Public License for more details.
19 ;; Version 3 of the GNU General Public License is in the file
20 ;; LICENSE.GPL that was distributed with this file. If it is not
21 ;; present, you can access it from
22 ;; http://www.gnu.org/copyleft/gpl.txt (until superseded by a
23 ;; newer version) or write to the Free Software Foundation, Inc., 59
24 ;; Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 ;; Commentary:
28 ;;
30 ;;; Code:
32 ;;; Hiding swig:
33 (cl:defpackage :swig-macros
34 (:use :cl :cffi)
35 (:documentation
36 "Package containing utility functions for SWIG cffi interface generation")
37 (:export #:swig-lispify #:defanonenum))
39 ;;; Low-level implementation:
40 (defpackage #:cuddapi
41 (:use :cl :cffi :swig-macros)
42 (:export #:cudd-manager #:cudd-node)
43 ;; other exports done by swig
46 ;;; Higher-level interface similar to de.uuhaus.bdd
47 (defpackage #:cudd
48 (:use #:cuddapi #:cl)
49 (:export #:bdd-environment)
50 (:export #:with-bdd-environment #:make-bdd-environment)
51 ; (:export #:make-bdd)
52 (:export #:bdd-true #:bdd-false)
53 (:export #:bdd-new-variable)
54 (:export #:bdd-and #:bdd-or #:bdd-not #:bdd-xor #:bdd-nand #:bdd-nor
55 #:bdd-and-not #:bdd-or-not #:bdd-implies
56 #:bdd-iff #:bdd-restrict)
57 (:export #:bdd-exists #:bdd-forall)
58 (:export #:bdd-tautologyp #:bdd-satisfiablep)
59 (:export #:bdd-var-min #:bdd-var-max)
60 (:export #:bdd-var-fixed0 #:bdd-var-fixed0)
61 (:export #:deserialize-bdd))