src/pset-*.lisp: Allow parsing and retrieval of C types as property values.
[sod] / src / pset-impl.lisp
index e3e505f..14cb43b 100644 (file)
     ((value symbol) (type (eql :symbol)) (wanted (eql :id)))
   (frob-identifier (symbol-name value)))
 
+;;; Types.
+
+(defmethod coerce-property-value
+    ((value string) (type (eql :id)) (wanted (eql :type)))
+  (or (gethash value *module-type-map*)
+      (gethash value *declspec-map*)
+      (error "Unknown type `~A'." value)))
+
 ;;;--------------------------------------------------------------------------
 ;;; Property sets.