Search
Wednesday, 17th of May 2017, 22:17:59 UTC
7:16:08
Shinmera
Lmao John[Lisbeth]
7:16:27
Shinmera
Finally had a meltdown. Saw that one coming since he first showed up in #lisp
7:16:59
Shinmera
darthmatch: Ping for the third time
9:22:40
gingerale
Hmm.. Well this is a bother. This doesn't seem to work, (defcenum bar ... :bar-count) (defstruct foo (offset :uint16 :count (foreign-enum-value 'bar-format :bar-count)))
9:23:04
gingerale
Not 'bar-format, just 'bar
9:23:33
Shinmera
Wait what, why is the number of "offsets" stored in an enum
9:23:35
gingerale
Instead it passes the (foreign-enum-value ...) as a list
9:23:47
Shinmera
Well yeah, it needs to know it at compile time
9:23:51
gingerale
That's how it's in the C API. :U
9:24:28
gingerale
So I just tried to follow that
9:24:31
Shinmera
...can you link me that?
9:24:54
gingerale
https://github.com/bkaradzic/bgfx/blob/master/include/bgfx/c99/bgfx.h#L349
9:24:55
Colleen
https://github.com/bkaradzi... Website (HTML), Title: bgfx/bgfx.h at master · bkaradzic/bgfx · GitHub
9:26:25
Shinmera
You can pack the enum definition in an (eval-when (:load-toplevel :compile-toplevel :execute) ..) and then use #.(foreign-enum-value ...)
9:26:50
gingerale
Ah, I'll try that, thanks.
9:28:01
Shinmera
alternatively, and stylistically nicer, you could just use a defconstant for that count enum thing.
9:28:08
Shinmera
Since it's technically not really part of the enum itself
9:28:13
Shinmera
and rather a dirty trick.
9:29:33
Shinmera
So (defconstant attrib-count 16) ... #.attrib-count
9:30:30
Shinmera
To be portable I think you need an eval-when around the defconstant too, though.
9:34:55
gingerale
There we go. It quickloads without warning sand errors
9:35:32
gingerale
Now to make defuns and defclasses
Thursday, 18th of May 2017, 10:17:59 UTC