4 ;; actually generates the binding
6 (defun produce-binding ()
9 (for gir in
*gir-files
*)
10 (for repository in
*repository-files
*)
13 (cl-fad::pathname-as-file
(format nil
"~A-types.lisp" (repository-name repository
))))
15 :if-exists
:supersede
)
16 (parse-repository outs gir
*gir-top-level-type-elements
*)))
18 (for gir in
*gir-files
*)
19 (for repository in
*repository-files
*)
22 (cl-fad::pathname-as-file
(format nil
"~A-funcs.lisp" (repository-name repository
))))
24 :if-exists
:supersede
)
25 (parse-repository outs gir
*gir-top-level-function-elements
*)))
26 (with-open-file (outs (merge-pathnames
27 (cl-fad::pathname-as-file
(format nil
"missing-types.lisp")))
29 :if-exists
:supersede
)
30 (format outs
";; the following types need to be defined in order to use this binding~%")
32 (for unknown in
*unknown-types
*)
33 (format outs
";; ~T~A~%" unknown
))
34 (format outs
";; thank you for your attention!~%")))