1 /* Guile-R6RS-Libs --- Implementation of R6RS standard libraries.
2 Copyright (C) 2007, 2009 Ludovic Courtès <ludo@gnu.org>
4 Guile-R6RS-Libs is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
9 Guile-R6RS-Libs is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
14 You should have received a copy of the GNU Lesser General Public
15 License along with Guile-R6RS-Libs; if not, write to the Free Software
16 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */
18 #ifndef GUILE_R6RS_IO_PORTS_H
19 #define GUILE_R6RS_IO_PORTS_H
25 SCM_API
void scm_init_r6rs_ports (void);
27 SCM_API SCM
scm_r6rs_eof_object (void);
28 SCM_API SCM
scm_r6rs_open_bytevector_input_port (SCM
, SCM
);
29 SCM_API SCM
scm_r6rs_make_custom_binary_input_port (SCM
, SCM
, SCM
, SCM
, SCM
);
30 SCM_API SCM
scm_r6rs_get_u8 (SCM
);
31 SCM_API SCM
scm_r6rs_lookahead_u8 (SCM
);
32 SCM_API SCM
scm_r6rs_get_bytevector_n (SCM
, SCM
);
33 SCM_API SCM
scm_r6rs_get_bytevector_n_x (SCM
, SCM
, SCM
, SCM
);
34 SCM_API SCM
scm_r6rs_get_bytevector_some (SCM
);
35 SCM_API SCM
scm_r6rs_get_bytevector_all (SCM
);
36 SCM_API SCM
scm_r6rs_put_u8 (SCM
, SCM
);
37 SCM_API SCM
scm_r6rs_put_bytevector (SCM
, SCM
, SCM
, SCM
);
38 SCM_API SCM
scm_r6rs_open_bytevector_output_port (SCM
);
39 SCM_API SCM
scm_r6rs_make_custom_binary_output_port (SCM
, SCM
, SCM
, SCM
, SCM
);