X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=perliol.h;h=6d4485abcca59fe72b3798eac3d0827f801e8fd5;hb=39644a267dae6dfa935b1c1d39151eb399850949;hp=a2581b26643372c38ca33cd0405907f859615d92;hpb=5e2ab84baab5f2372dc1ffda47d5b89faa2613cd;p=p5sagit%2Fp5-mst-13.2.git diff --git a/perliol.h b/perliol.h index a2581b2..6d4485a 100644 --- a/perliol.h +++ b/perliol.h @@ -10,7 +10,7 @@ struct _PerlIO_funcs PerlIO * (*Fdopen)(PerlIO_funcs *tab, int fd, const char *mode); PerlIO * (*Open)(PerlIO_funcs *tab, const char *path, const char *mode); int (*Reopen)(const char *path, const char *mode, PerlIO *f); - IV (*Pushed)(PerlIO *f,const char *mode); + IV (*Pushed)(PerlIO *f,const char *mode,const char *arg,STRLEN len); IV (*Popped)(PerlIO *f); /* Unix-like functions - cf sfio line disciplines */ SSize_t (*Read)(PerlIO *f, void *vbuf, Size_t count); @@ -40,6 +40,8 @@ struct _PerlIO_funcs #define PERLIO_K_BUFFERED 0x00000002 #define PERLIO_K_CANCRLF 0x00000004 #define PERLIO_K_FASTGETS 0x00000008 +#define PERLIO_K_DUMMY 0x00000010 +#define PERLIO_K_UTF8 0x00008000 /*--------------------------------------------------------------------------------------*/ struct _PerlIO @@ -73,16 +75,20 @@ struct _PerlIO #define PerlIONext(f) (&(PerlIOBase(f)->next)) /*--------------------------------------------------------------------------------------*/ - -extern PerlIO_funcs PerlIO_unix; -extern PerlIO_funcs PerlIO_perlio; -extern PerlIO_funcs PerlIO_stdio; -extern PerlIO_funcs PerlIO_crlf; +/* Data exports - EXT rather than extern is needed for Cygwin */ +EXT PerlIO_funcs PerlIO_unix; +EXT PerlIO_funcs PerlIO_perlio; +EXT PerlIO_funcs PerlIO_stdio; +EXT PerlIO_funcs PerlIO_crlf; +EXT PerlIO_funcs PerlIO_utf8; +EXT PerlIO_funcs PerlIO_byte; +EXT PerlIO_funcs PerlIO_raw; +EXT PerlIO_funcs PerlIO_pending; #ifdef HAS_MMAP -extern PerlIO_funcs PerlIO_mmap; +EXT PerlIO_funcs PerlIO_mmap; #endif -extern PerlIO *PerlIO_allocate(void); +extern PerlIO *PerlIO_allocate(pTHX); #if O_BINARY != O_TEXT #define PERLIO_STDTEXT "t" @@ -94,7 +100,7 @@ extern PerlIO *PerlIO_allocate(void); /* Generic, or stub layer functions */ extern IV PerlIOBase_fileno (PerlIO *f); -extern IV PerlIOBase_pushed (PerlIO *f, const char *mode); +extern IV PerlIOBase_pushed (PerlIO *f, const char *mode,const char *arg,STRLEN len); extern IV PerlIOBase_popped (PerlIO *f); extern SSize_t PerlIOBase_unread (PerlIO *f, const void *vbuf, Size_t count); extern IV PerlIOBase_eof (PerlIO *f);