diff --git a/test/vybe/flecs_test.clj b/test/vybe/flecs_test.clj index e1616e9..87881c7 100644 --- a/test/vybe/flecs_test.clj +++ b/test/vybe/flecs_test.clj @@ -129,13 +129,23 @@ (reset! @t-global (vr.c/matrix-multiply local (nth transform-parent 0))) (reset! @t-global local)))))) -(vc/defn* default-systems :- :void +(defmethod vc/c-invoke (declare lala) + [{:keys [args]}] + (format "((1ull << 63) | ((((uint64_t)(%s)) << 32) + ((uint32_t)(%s))))" + #_(flecs/ECS_PAIR) + (vc/emit (first args)) + (vc/emit (second args)))) + +(vc/defn* ^:debug default-systems :- :void [w :- :*] (tap> 9999) + ;; (ECS_PAIR | ((((uint64_t)(EcsDependsOn)) << 32) + ((uint32_t)(EcsOnUpdate)))) + #_(bit-or (flecs/ECS_PAIR)) (let [e (vf.c/ecs-entity-init w (vp/& (vf/entity_desc_t {:name "vybe_transform" - :add (-> [(vf.c/vybe-pair (flecs/EcsDependsOn) - (flecs/EcsOnUpdate)) + :add (-> [#_(vf.c/vybe-pair (flecs/EcsDependsOn) + (flecs/EcsOnUpdate)) + (lala (flecs/EcsDependsOn) (flecs/EcsOnUpdate)) ;; This `0` is important so Flecs can know ;; the end of the array. 0]