Open cbaggers opened 7 years ago
GET-TYPED-TO-FOREIGN
& POPULATE-*
are the causes of this.
(defstruct-g (erosion-uvs :accesors nil)
(left :vec2)
(right :vec2)
(top :vec2)
(bottom :vec2)
(top-left :vec2)
(top-right :vec2)
(bottom-left :vec2)
(bottom-right :vec2))
becomes
(PROGN
(EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE)
(V-DEFSTRUCT (EROSION-UVS :SHADOWING V_EROSION-UVS)
NIL
(LEFT :VEC2)
(RIGHT :VEC2)
(TOP :VEC2)
(BOTTOM :VEC2)
(TOP-LEFT :VEC2)
(TOP-RIGHT :VEC2)
(BOTTOM-LEFT :VEC2)
(BOTTOM-RIGHT :VEC2)))
(EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE)
(CFFI:DEFCSTRUCT CEPL.HIDDEN::MOO.EROSION-UVS.FOREIGN
(LEFT :VEC2)
(RIGHT :VEC2)
(TOP :VEC2)
(BOTTOM :VEC2)
(TOP-LEFT :VEC2)
(TOP-RIGHT :VEC2)
(BOTTOM-LEFT :VEC2)
(BOTTOM-RIGHT :VEC2))
(CFFI:DEFINE-FOREIGN-TYPE CEPL.HIDDEN::MOO.EROSION-UVS.CFFI-CT-TYPE NIL NIL
(:ACTUAL-TYPE :STRUCT
CEPL.HIDDEN::MOO.EROSION-UVS.FOREIGN)
(:SIMPLE-PARSER EROSION-UVS))
(DEFMETHOD CFFI:TRANSLATE-FROM-FOREIGN
(CEPL.TYPES::PTR
(TYPE CEPL.HIDDEN::MOO.EROSION-UVS.CFFI-CT-TYPE))
(CEPL.HIDDEN::MOO.EROSION-UVS.MAKE CEPL.TYPES::PTR))
(DEFMETHOD CFFI:EXPAND-FROM-FOREIGN
(CEPL.TYPES::PTR
(TYPE CEPL.HIDDEN::MOO.EROSION-UVS.CFFI-CT-TYPE))
(LIST 'CEPL.HIDDEN::MOO.EROSION-UVS.MAKE CEPL.TYPES::PTR)))
(DEFSTRUCT
(EROSION-UVS (:CONC-NAME NIL)
(:CONSTRUCTOR CEPL.HIDDEN::MOO.EROSION-UVS.MAKE
(CEPL.HIDDEN::MOO.EROSION-UVS.PTR))
(:COPIER NIL))
(CEPL.HIDDEN::MOO.EROSION-UVS.PTR (CFFI-SYS:NULL-POINTER) :TYPE
CFFI-SYS:FOREIGN-POINTER :READ-ONLY T))
(%RTG-MATH:DEFN-INLINE CEPL.HIDDEN::MOO.EROSION-UVS.FROM-FOREIGN
((CEPL.TYPES::PTR CFFI-SYS:FOREIGN-POINTER))
EROSION-UVS
(DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0) (DEBUG 0)))
(CEPL.HIDDEN::MOO.EROSION-UVS.MAKE CEPL.TYPES::PTR))
(%RTG-MATH:DEFN-INLINE CEPL.HIDDEN::MOO.EROSION-UVS.TO-FOREIGN
((CEPL.TYPES::PTR CFFI-SYS:FOREIGN-POINTER) (CEPL.TYPES::VALUE T))
T
(DECLARE (OPTIMIZE (SPEED 3) (SAFETY 0) (DEBUG 0)))
(POPULATE-EROSION-UVS (CEPL.HIDDEN::MOO.EROSION-UVS.MAKE CEPL.TYPES::PTR)
CEPL.TYPES::VALUE))
(DEFMETHOD GET-TYPED-FROM-FOREIGN ((CEPL.TYPES::TYPE-NAME (EQL 'EROSION-UVS)))
#'CEPL.HIDDEN::MOO.EROSION-UVS.FROM-FOREIGN)
(DEFMETHOD GET-TYPED-TO-FOREIGN ((CEPL.TYPES::TYPE-NAME (EQL 'EROSION-UVS)))
#'CEPL.HIDDEN::MOO.EROSION-UVS.TO-FOREIGN)
(CEPL-UTILS:DEFUN+ MAKE-EROSION-UVS
(&KEY LEFT RIGHT TOP BOTTOM TOP-LEFT TOP-RIGHT BOTTOM-LEFT BOTTOM-RIGHT)
(LET ((CEPL.TYPES::RESULT (CFFI:FOREIGN-ALLOC 'EROSION-UVS)))
(WHEN LEFT (SETF (NIL CEPL.TYPES::RESULT) LEFT))
(WHEN RIGHT (SETF (NIL CEPL.TYPES::RESULT) RIGHT))
(WHEN TOP (SETF (NIL CEPL.TYPES::RESULT) TOP))
(WHEN BOTTOM (SETF (NIL CEPL.TYPES::RESULT) BOTTOM))
(WHEN TOP-LEFT (SETF (NIL CEPL.TYPES::RESULT) TOP-LEFT))
(WHEN TOP-RIGHT (SETF (NIL CEPL.TYPES::RESULT) TOP-RIGHT))
(WHEN BOTTOM-LEFT (SETF (NIL CEPL.TYPES::RESULT) BOTTOM-LEFT))
(WHEN BOTTOM-RIGHT (SETF (NIL CEPL.TYPES::RESULT) BOTTOM-RIGHT))
CEPL.TYPES::RESULT))
(PROGN
(DEFMETHOD CEPL.INTERNALS:GL-ASSIGN-ATTRIB-POINTERS
((CEPL.TYPES::ARRAY-TYPE (EQL 'EROSION-UVS))
&OPTIONAL (CEPL.TYPES::ATTRIB-OFFSET 0)
(CEPL.TYPES::POINTER-OFFSET 0) CEPL.TYPES::STRIDE-OVERRIDE
CEPL.TYPES::NORMALIZED CEPL.TYPES::INSTANCE-DIVISOR)
(DECLARE (IGNORE CEPL.TYPES::ARRAY-TYPE CEPL.TYPES::NORMALIZED))
(LET ((#:|stride793|
(OR CEPL.TYPES::STRIDE-OVERRIDE
(CEPL.INTERNALS:GL-TYPE-SIZE 'EROSION-UVS))))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 0))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 0) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 0)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 0
CEPL.TYPES::POINTER-OFFSET)))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 1))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 1) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 1)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 8
CEPL.TYPES::POINTER-OFFSET)))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 2))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 2) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 2)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 16
CEPL.TYPES::POINTER-OFFSET)))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 3))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 3) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 3)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 24
CEPL.TYPES::POINTER-OFFSET)))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 4))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 4) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 4)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 32
CEPL.TYPES::POINTER-OFFSET)))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 5))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 5) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 5)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 40
CEPL.TYPES::POINTER-OFFSET)))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 6))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 6) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 6)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 48
CEPL.TYPES::POINTER-OFFSET)))
(CL-OPENGL-BINDINGS:ENABLE-VERTEX-ATTRIB-ARRAY
(+ CEPL.TYPES::ATTRIB-OFFSET 7))
(WHEN CEPL.TYPES::INSTANCE-DIVISOR
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-DIVISOR
(+ CEPL.TYPES::ATTRIB-OFFSET 7) CEPL.TYPES::INSTANCE-DIVISOR))
(CL-OPENGL-BINDINGS:VERTEX-ATTRIB-POINTER (+ CEPL.TYPES::ATTRIB-OFFSET 7)
2 :FLOAT NIL #:|stride793|
(CFFI-SYS:MAKE-POINTER
(+ 56
CEPL.TYPES::POINTER-OFFSET)))
8)))
(CEPL-UTILS:DEFUN+ POPULATE-EROSION-UVS
(CEPL.TYPES::OBJECT CEPL.TYPES::DATA)
(DECLARE (TYPE EROSION-UVS CEPL.TYPES::OBJECT))
(UNLESS (OR (VECTORP CEPL.TYPES::DATA) (LISTP CEPL.TYPES::DATA))
(ERROR "can only populate a struct of type ~a with a list or an array"
'EROSION-UVS))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 0))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 1))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 2))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 3))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 4))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 5))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 6))
(SETF (NIL CEPL.TYPES::OBJECT) (ELT CEPL.TYPES::DATA 7))
CEPL.TYPES::OBJECT)
(DEFMETHOD CEPL.INTERNALS:POPULATE
((CEPL.TYPES::OBJECT EROSION-UVS) CEPL.TYPES::DATA)
(POPULATE-EROSION-UVS CEPL.TYPES::OBJECT CEPL.TYPES::DATA))
NIL
(DEFMETHOD PULL-G ((CEPL.TYPES::OBJECT EROSION-UVS))
(LIST (NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)
(NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)
(NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)
(NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)))
(DEFMETHOD PULL1-G ((CEPL.TYPES::OBJECT EROSION-UVS))
(LIST (NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)
(NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)
(NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)
(NIL CEPL.TYPES::OBJECT) (NIL CEPL.TYPES::OBJECT)))
(DEFMETHOD PUSH-G
((CEPL.TYPES::OBJECT LIST) (CEPL.TYPES::DESTINATION EROSION-UVS))
(CEPL.INTERNALS:POPULATE CEPL.TYPES::DESTINATION CEPL.TYPES::OBJECT))
(DEFMETHOD CEPL.INTERNALS:SYMBOL-NAMES-CEPL-STRUCTP
((CEPL.TYPES::SYM (EQL 'EROSION-UVS)))
T)
'EROSION-UVS)
dumb mistake.