register_class   xtlang


Defined in:  https://github.com/digego/extempore/tree/v0.8.9/libs/contrib/libgodot.xtm

Implementation

;   void (void *p_gdnative_handle, const char *p_name, const char *p_base, godot_instance_create_func p_create_func, godot_instance_destroy_func p_destroy_func);
;; the api does not ask for references to structs
;; but NOT passing references fails (args d & e)
;; I think this is really a calling convention ABI issue
;; at least, for me, for now, passing refs works
;; so HERE BE DRAGONS
(bind-func register_class
  (lambda (a:i8* b:i8* c:i8* d:godot_instance_create_func* e:godot_instance_destroy_func*)
    (let ((fptr (cast (tref nativescript_api 3) [void,i8*,i8*,i8*,godot_instance_create_func*,godot_instance_destroy_func*]*)))
      ;; (println "XTL register_class" d e "fptr" (cast fptr i8*))
      (fptrcall fptr a b c d e)
      (println "Class registerd!")
      void)))


Back to Index

Similar Entries

  • impc:ti:register-new-builtin    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-closure    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-genericfunc    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-generictype    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-globalvar    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-namedtype    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-nativefunc    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-polyfunc    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-polytype    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-typealias    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • impc:ti:register-new-xtmacro    scheme    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • on_register_custom_schemes    xtlang    /digego/extempore/tree/v0.8.9/libs/external/cef/cef.xtm
  • register-ext-val    macro    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • register-lib-func    macro    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • register-lib-type    macro    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • register-lib-val    macro    /digego/extempore/tree/v0.8.9/runtime/llvmti.xtm
  • register_method    xtlang    /digego/extempore/tree/v0.8.9/libs/contrib/libgodot.xtm
  • rtmidi_register_callback    xtlang    /digego/extempore/tree/v0.8.9/libs/contrib/rtmidi.xtm
  • type_class_test    xtlang    /digego/extempore/tree/v0.8.9/examples/core/typeclasses.xtm
  • xobj_add_class    xtlang    /digego/extempore/tree/v0.8.9/libs/core/xobject.xtm
  • xobj_class_exists    xtlang    /digego/extempore/tree/v0.8.9/libs/core/xobject.xtm
  • xobj_print_class    xtlang    /digego/extempore/tree/v0.8.9/libs/core/xobject.xtm
  • xobj_print_classes    xtlang    /digego/extempore/tree/v0.8.9/libs/core/xobject.xtm