;;; Code:
(define-module (figl glx types)
- #:use-module (system foreign)
- #:re-export (int unsigned-long)
- #:export (Bool
+ #:use-module ((system foreign) #:renamer (symbol-prefix-proc 'ffi:))
+ #:use-module (figl runtime)
+ #:export (int
+ unsigned-long
+ Bool
Display-*
Font
GLXContext
(module-use! (module-public-interface (current-module))
(resolve-interface '(figl gl types)))
-(define Bool int)
-(define Display-* '*)
-(define Font unsigned-long)
-(define GLXContext '*)
-(define const-GLXContext '*)
-(define GLXContextID '*)
-(define GLXDrawable unsigned-long)
-(define GLXFBConfig '*)
-(define GLXFBConfig-* '*)
-(define GLXFBConfig-* '*)
-(define GLXPbuffer unsigned-long)
-(define GLXPixmap unsigned-long)
-(define GLXWindow unsigned-long)
-(define Pixmap unsigned-long)
-(define Window unsigned-long)
-(define XVisualInfo* '*)
-(define XVisualInfo-* '*)
-(define const-char-* '*)
-(define const-int-* '*)
-(define int-* '*)
-(define unsigned-int-* '*)
-(define unsigned-long-* '*)
+(define-simple-foreign-type int ffi:int)
+(define-simple-foreign-type unsigned-long ffi:unsigned-long)
+(define-simple-foreign-type Bool ffi:int)
+(define-simple-foreign-type Display-* '*)
+(define-simple-foreign-type Font ffi:unsigned-long)
+(define-simple-foreign-type GLXContext '*)
+(define-simple-foreign-type const-GLXContext '*)
+(define-simple-foreign-type GLXContextID '*)
+(define-simple-foreign-type GLXDrawable ffi:unsigned-long)
+(define-simple-foreign-type GLXFBConfig '*)
+(define-simple-foreign-type GLXFBConfig-* '*)
+(define-simple-foreign-type GLXFBConfig-* '*)
+(define-simple-foreign-type GLXPbuffer ffi:unsigned-long)
+(define-simple-foreign-type GLXPixmap ffi:unsigned-long)
+(define-simple-foreign-type GLXWindow ffi:unsigned-long)
+(define-simple-foreign-type Pixmap ffi:unsigned-long)
+(define-simple-foreign-type Window ffi:unsigned-long)
+(define-simple-foreign-type XVisualInfo* '*)
+(define-simple-foreign-type XVisualInfo-* '*)
+(define-simple-foreign-type const-char-* '*)
+(define-simple-foreign-type const-int-* '*)
+(define-simple-foreign-type int-* '*)
+(define-simple-foreign-type unsigned-int-* '*)
+(define-simple-foreign-type unsigned-long-* '*)
;; void(*)()
-(define #{void\x28;*\x29;\x28;\x29;}# '*)
+(define-simple-foreign-type #{void\x28;*\x29;\x28;\x29;}# '*)