X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=mop.lisp;h=0771543be9f0cc3bb3a91ddc3db84f6a15e96988;hb=ea10aaba169e5af04df30b4dc1937c913404d816;hp=b37a59c21300673022024970184867678f1e6db1;hpb=7488e60672318e28e08f87c64fe3868690dbfd7b;p=hyperobject.git diff --git a/mop.lisp b/mop.lisp index b37a59c..0771543 100644 --- a/mop.lisp +++ b/mop.lisp @@ -218,7 +218,8 @@ (defmethod finalize-inheritance :after ((cl hyperobject-class)) "Initialize a hyperobject class. Calculates all class slots" (finalize-subobjects cl) - (finalize-compute-cached cl)) + (finalize-compute-cached cl) + (init-hyperobject-class cl)) (eval-when (:compile-toplevel :load-toplevel :execute) (when (>= (length (generic-function-lambda-list @@ -401,6 +402,13 @@ SQL name" (or (eq type 'string) (and (listp type) (some #'(lambda (x) (eq x 'string)) type)))) +(defun value-type-is-a-string (type) + (or (eq type 'string) + (eq type 'cdata) + (and (listp type) (some #'(lambda (x) (or (eq x 'string) + (eq x 'cdata))) + type)))) + (defun base-value-type (value-type) (if (atom value-type) value-type