alien.fortran can't piggyback the alien.parser arg parser anymore
parent
31264538e3
commit
8f336b4ec0
|
@ -1,5 +1,5 @@
|
||||||
! (c) 2009 Joe Groff, see BSD license
|
! (c) 2009 Joe Groff, see BSD license
|
||||||
USING: accessors alien alien.c-types alien.complex alien.parser
|
USING: accessors alien alien.c-types alien.complex grouping
|
||||||
alien.strings alien.syntax arrays ascii assocs
|
alien.strings alien.syntax arrays ascii assocs
|
||||||
byte-arrays combinators combinators.short-circuit fry generalizations
|
byte-arrays combinators combinators.short-circuit fry generalizations
|
||||||
kernel lexer macros math math.parser namespaces parser sequences
|
kernel lexer macros math math.parser namespaces parser sequences
|
||||||
|
@ -429,6 +429,11 @@ PRIVATE>
|
||||||
MACRO: fortran-invoke ( return library function parameters -- )
|
MACRO: fortran-invoke ( return library function parameters -- )
|
||||||
{ [ 2drop nip set-fortran-abi ] [ (fortran-invoke) ] } 4 ncleave ;
|
{ [ 2drop nip set-fortran-abi ] [ (fortran-invoke) ] } 4 ncleave ;
|
||||||
|
|
||||||
|
: parse-arglist ( parameters return -- types effect )
|
||||||
|
[ 2 group unzip [ "," ?tail drop ] map ]
|
||||||
|
[ [ { } ] [ 1array ] if-void ]
|
||||||
|
bi* <effect> ;
|
||||||
|
|
||||||
:: define-fortran-function ( return library function parameters -- )
|
:: define-fortran-function ( return library function parameters -- )
|
||||||
function create-in dup reset-generic
|
function create-in dup reset-generic
|
||||||
return library function parameters return [ "void" ] unless* parse-arglist
|
return library function parameters return [ "void" ] unless* parse-arglist
|
||||||
|
|
Loading…
Reference in New Issue