alien.marshall.syntax: changed naming scheme
Prefixes: C- generates inline C code M- marshalls arguments and return values CM- does bothdb4
parent
eab6d79ac4
commit
3d5b9f1651
basis/alien/marshall/syntax
|
@ -7,11 +7,11 @@ IN: alien.marshall.syntax.tests
|
||||||
DELETE-C-LIBRARY: test
|
DELETE-C-LIBRARY: test
|
||||||
C-LIBRARY: test
|
C-LIBRARY: test
|
||||||
|
|
||||||
C-MARSHALLED: void outarg1 ( int* a )
|
CM-FUNCTION: void outarg1 ( int* a )
|
||||||
*a += 2;
|
*a += 2;
|
||||||
;
|
;
|
||||||
|
|
||||||
C-MARSHALLED: unsigned-long* outarg2 ( unsigned-long a, unsigned-long* b )
|
CM-FUNCTION: unsigned-long* outarg2 ( unsigned-long a, unsigned-long* b )
|
||||||
unsigned long* x = (unsigned long*) malloc(sizeof(unsigned long));
|
unsigned long* x = (unsigned long*) malloc(sizeof(unsigned long));
|
||||||
*b = 10 + *b;
|
*b = 10 + *b;
|
||||||
*x = a + *b;
|
*x = a + *b;
|
||||||
|
|
|
@ -29,10 +29,10 @@ IN: alien.marshall.syntax
|
||||||
[ in>> ] keep [ marshalled-function define-declared ] 3keep
|
[ in>> ] keep [ marshalled-function define-declared ] 3keep
|
||||||
out>> c-function-string' c-strings get push ;
|
out>> c-function-string' c-strings get push ;
|
||||||
|
|
||||||
SYNTAX: C-MARSHALLED:
|
SYNTAX: CM-FUNCTION:
|
||||||
function-types-effect define-c-marshalled ;
|
function-types-effect define-c-marshalled ;
|
||||||
|
|
||||||
SYNTAX: MARSHALLED:
|
SYNTAX: M-FUNCTION:
|
||||||
function-types-effect marshalled-function define-declared ;
|
function-types-effect marshalled-function define-declared ;
|
||||||
|
|
||||||
SYNTAX: M-STRUCTURE:
|
SYNTAX: M-STRUCTURE:
|
||||||
|
|
Loading…
Reference in New Issue