123456789101112131415161718192021222324252627282930313233343536373839 |
- // FILE *
- %{
- #ifdef __cplusplus
- extern "C" {
- #endif
- /* Ruby 1.9 changed the file name of this header */
- #ifdef HAVE_RUBY_IO_H
- #include "ruby/io.h"
- #else
- #include "rubyio.h"
- #endif
- #ifdef __cplusplus
- }
- #endif
- %}
- %typemap(in) FILE *READ {
- OpenFile *of;
- GetOpenFile($input, of);
- rb_io_check_readable(of);
- $1 = GetReadFile(of);
- rb_read_check($1);
- }
- %typemap(in) FILE *READ_NOCHECK {
- OpenFile *of;
- GetOpenFile($input, of);
- rb_io_check_readable(of);
- $1 = GetReadFile(of);
- }
- %typemap(in) FILE *WRITE {
- OpenFile *of;
- GetOpenFile($input, of);
- rb_io_check_writable(of);
- $1 = GetWriteFile(of);
- }
|