@ -64,10 +64,38 @@ static GncEmployee * gncEmployeeLookupFlip(GUID g, QofBook *b)
% }
% }
G L I S T _ H E L P E R _ I N O U T ( E n t r y L i s t , S W I G T Y P E _ p _ _ g n c E n t r y ) ;
G L I S T _ H E L P E R _ I N O U T ( E n t r y L i s t , S W I G T Y P E _ p _ _ g n c E n t r y ) ;
G L I S T _ H E L P E R _ I N O U T ( A c c o u n t V a l u e L i s t , S W I G T Y P E _ p _ _ g n c A c c o u n t V a l u e ) ;
% t y p e m a p ( in ) G n c A c c o u n t V a l u e * "$1 = gnc_scm_to_account_value_ptr($input);"
% t y p e m a p ( in ) G n c A c c o u n t V a l u e * "$1 = gnc_scm_to_account_value_ptr($input);"
% t y p e m a p ( o u t ) G n c A c c o u n t V a l u e * "$result = gnc_account_value_ptr_to_scm($1);"
% t y p e m a p ( o u t ) G n c A c c o u n t V a l u e * "$result = gnc_account_value_ptr_to_scm($1);"
% t y p e m a p ( in ) A c c o u n t V a l u e L i s t * {
S C M l i s t = $ input ;
G L i s t * c _ l i s t = NULL ;
while ( ! S C M _ N U L L P ( l i s t ) ) {
G n c A c c o u n t V a l u e * p ;
S C M p _ s c m = S C M _ C A R ( l i s t ) ;
if ( S C M _ F A L S E P ( p _ s c m ) | | S C M _ N U L L P ( p _ s c m ) )
p = NULL ;
else
p = g n c _ s c m _ t o _ a c c o u n t _ v a l u e _ p t r ( p _ s c m ) ;
c _ l i s t = g _ l i s t _ p r e p e n d ( c _ l i s t , p ) ;
l i s t = S C M _ C D R ( l i s t ) ;
}
$ 1 = g _ l i s t _ r e v e r s e ( c _ l i s t ) ;
}
% t y p e m a p ( o u t ) A c c o u n t V a l u e L i s t * {
S C M l i s t = S C M _ E O L ;
G L i s t * n o d e ;
for ( n o d e = $ 1 ; n o d e ; n o d e = n o d e - > next )
l i s t = s c m _ c o n s ( g n c _ a c c o u n t _ v a l u e _ p t r _ t o _ s c m ( n o d e - > d a t a ) , l i s t ) ;
$ r e s u l t = s c m _ r e v e r s e ( l i s t ) ;
}
/* P a r s e t h e h e a d e r f i l e s t o g e n e r a t e w r a p p e r s */
/* P a r s e t h e h e a d e r f i l e s t o g e n e r a t e w r a p p e r s */