nip '[ _ <sliced-groups> ] ;
: [>param] ( type -- quot )
- c-type-count over c-type-name?
+ c-type-count over c-type-word?
[ [>c-type-param] ] [ [>object-param] ] if ;
MACRO: >param ( in -- quot: ( array -- param ) )
"Factor sequences as data-map outputs not supported" throw ;
: [alloc-param] ( type -- quot )
- c-type-count over c-type-name?
+ c-type-count over c-type-word?
[ [alloc-c-type-param] ] [ [alloc-object-param] ] if ;
MACRO: alloc-param ( out -- quot: ( len -- param ) )
: parse-data-map-effect ( accum -- accum )
")" parse-effect
- [ in>> [ (parse-c-type) ] map parsed ]
- [ out>> [ (parse-c-type) ] map parsed ] bi ;
+ [ in>> [ (parse-c-type) ] map suffix! ]
+ [ out>> [ (parse-c-type) ] map suffix! ] bi ;
PRIVATE>
SYNTAX: data-map(
- parse-data-map-effect \ data-map parsed ;
+ parse-data-map-effect \ data-map suffix! ;
SYNTAX: data-map!(
- parse-data-map-effect \ data-map! parsed ;
+ parse-data-map-effect \ data-map! suffix! ;