alien.marshall: use marshall-primitive instead of marshall-<primitive> words
parent
c5e30fee3e
commit
1cca58d781
|
@ -36,6 +36,8 @@ M: struct-wrapper unmarshall-cast ;
|
||||||
|
|
||||||
: marshall-void* ( obj -- alien )
|
: marshall-void* ( obj -- alien )
|
||||||
marshall-pointer ;
|
marshall-pointer ;
|
||||||
|
: marshall-primitive ( n -- n )
|
||||||
|
[ bool>arg ] ptr-pass-through ;
|
||||||
|
|
||||||
: marshall-void** ( obj -- alien )
|
: marshall-void** ( obj -- alien )
|
||||||
[ marshall-void* ] map >void*-array malloc-underlying ;
|
[ marshall-void* ] map >void*-array malloc-underlying ;
|
||||||
|
@ -85,18 +87,18 @@ M: struct-wrapper unmarshall-cast ;
|
||||||
: primitive-marshaller ( type -- quot/f )
|
: primitive-marshaller ( type -- quot/f )
|
||||||
{
|
{
|
||||||
{ "bool" [ [ marshall-bool ] ] }
|
{ "bool" [ [ marshall-bool ] ] }
|
||||||
{ "char" [ [ marshall-char ] ] }
|
{ "char" [ [ marshall-primitive ] ] }
|
||||||
{ "uchar" [ [ marshall-uchar ] ] }
|
{ "uchar" [ [ marshall-primitive ] ] }
|
||||||
{ "short" [ [ marshall-short ] ] }
|
{ "short" [ [ marshall-primitive ] ] }
|
||||||
{ "ushort" [ [ marshall-ushort ] ] }
|
{ "ushort" [ [ marshall-primitive ] ] }
|
||||||
{ "int" [ [ marshall-int ] ] }
|
{ "int" [ [ marshall-primitive ] ] }
|
||||||
{ "uint" [ [ marshall-uint ] ] }
|
{ "uint" [ [ marshall-primitive ] ] }
|
||||||
{ "long" [ [ marshall-long ] ] }
|
{ "long" [ [ marshall-primitive ] ] }
|
||||||
{ "ulong" [ [ marshall-ulong ] ] }
|
{ "ulong" [ [ marshall-primitive ] ] }
|
||||||
{ "long" [ [ marshall-longlong ] ] }
|
{ "long" [ [ marshall-primitive ] ] }
|
||||||
{ "ulong" [ [ marshall-ulonglong ] ] }
|
{ "ulong" [ [ marshall-primitive ] ] }
|
||||||
{ "float" [ [ marshall-float ] ] }
|
{ "float" [ [ marshall-primitive ] ] }
|
||||||
{ "double" [ [ marshall-double ] ] }
|
{ "double" [ [ marshall-primitive ] ] }
|
||||||
{ "bool*" [ [ marshall-bool* ] ] }
|
{ "bool*" [ [ marshall-bool* ] ] }
|
||||||
{ "char*" [ [ marshall-char*-or-string ] ] }
|
{ "char*" [ [ marshall-char*-or-string ] ] }
|
||||||
{ "uchar*" [ [ marshall-uchar* ] ] }
|
{ "uchar*" [ [ marshall-uchar* ] ] }
|
||||||
|
|
Loading…
Reference in New Issue