3 (defclass cxx::number () ())
5 (defclass cxx::rational (cxx::number) ())
7 (defclass cxx::int (cxx::rational) ())
8 (defclass cxx::short (cxx::rational) ())
11 (defclass cxx::real (cxx::number) ())
13 (defclass cxx::float (cxx::real) ())
14 (defclass cxx::double (cxx::real) ())
17 (defclass cxx::char () ())
18 (defclass cxx::pointer ()
20 (defclass cxx::const ()
24 (defgeneric convert (from to))
26 (defmethod convert (from to)
32 (defmethod convert ((from character) (to cxx::int))
33 (values #'char->int 1))
35 (defmethod convert (from (to cxx::const))
36 (call-next-method (const from) to))
38 (defmethod convert ((from cxx::const) (to cxx::const))
39 (call-next-method (next from) (next to)))
44 (defmethod convert ((from float) (to cxx::int))
45 (values #'float->int 1))
47 (defmethod convert ((from string) (to cxx::char)))
48 ;(defmethod convert ((from string) (to qstring)))