X-Git-Url: http://christophe.rhodes.io/gitweb/?p=specializable.git;a=blobdiff_plain;f=src%2Fpackage.lisp;fp=src%2Fpackage.lisp;h=2f86c44ed656d66d21d2832d33b4bd76798daa57;hp=0000000000000000000000000000000000000000;hb=149a7b3d9c1eceaeddad8404137383545ac044e8;hpb=9dd8f1378407cae8ec7b6b05a8b3c152bc4a5f9b diff --git a/src/package.lisp b/src/package.lisp new file mode 100644 index 0000000..2f86c44 --- /dev/null +++ b/src/package.lisp @@ -0,0 +1,51 @@ +;;;; package.lisp --- Package definition for the language-extension.pattern-specializer system. +;;;; +;;;; Copyright (C) 2014 Jan Moringen +;;;; +;;;; Author: Jan Moringen + +(cl:defpackage #:pattern-specializer + (:use + #:cl + #:alexandria) + + (:import-from #:sb-mop + + #:funcallable-standard-class + #:set-funcallable-instance-function + + #:specializer + #:specializer-direct-methods + + #:method-specializers + #:method-function + + #:compute-discriminating-function + #:compute-effective-method + + #:generic-function-name + #:generic-function-methods + #:add-direct-method + #:remove-direct-method) + + (:import-from #:sb-pcl + #:parse-specializer-using-class + #:unparse-specializer-using-class + #:make-specializer-form-using-class + + #:make-method-lambda-using-specializers) + + ;; Specifier symbol for the pattern specializer + (:export + #:pattern) + + ;; Pattern specializer class + (:export + #:pattern-specializer + #:specializer-pattern) + + ;; Generic function and method + (:export + #:pattern-generic-function + + #:pattern-method))