diff options
author | Nick Ing-Simmons <nik@tiuk.ti.com> | 2001-10-16 11:32:48 +0000 |
---|---|---|
committer | Nick Ing-Simmons <nik@tiuk.ti.com> | 2001-10-16 11:32:48 +0000 |
commit | 8cf8f3d16d82d8b3561907820401eea7766f2f96 (patch) | |
tree | d5933c761c8ed663c8cccac2ec850c06948ef221 /ext | |
parent | 71200d45e1b06d4f36df595fa80b743f999642c1 (diff) | |
download | perl-8cf8f3d16d82d8b3561907820401eea7766f2f96.tar.gz |
Skeleton of "PerlIO_dup" coded.
Still-passes all tests non-threaded (well it would wouldn't it!)
p4raw-id: //depot/perlio@12451
Diffstat (limited to 'ext')
-rw-r--r-- | ext/Encode/Encode.xs | 8 | ||||
-rw-r--r-- | ext/PerlIO/Scalar/Scalar.xs | 7 | ||||
-rw-r--r-- | ext/PerlIO/Via/Via.xs | 9 |
3 files changed, 23 insertions, 1 deletions
diff --git a/ext/Encode/Encode.xs b/ext/Encode/Encode.xs index f3e8738836..e01959cd9a 100644 --- a/ext/Encode/Encode.xs +++ b/ext/Encode/Encode.xs @@ -325,6 +325,13 @@ PerlIOEncode_tell(PerlIO *f) return b->posn; } +PerlIO * +PerlIOEncode_dup(pTHX_ PerlIO *f, PerlIO *o, CLONE_PARAMS *params) +{ + /* FIXME - Almost certainly needs more work */ + return PerlIOBase_dup(aTHX_ f, o, params); +} + PerlIO_funcs PerlIO_encode = { "encoding", sizeof(PerlIOEncode), @@ -334,6 +341,7 @@ PerlIO_funcs PerlIO_encode = { PerlIOBuf_open, PerlIOEncode_getarg, PerlIOBase_fileno, + PerlIOEncode_dup, PerlIOBuf_read, PerlIOBuf_unread, PerlIOBuf_write, diff --git a/ext/PerlIO/Scalar/Scalar.xs b/ext/PerlIO/Scalar/Scalar.xs index d8ee701b59..9fd6a2fde3 100644 --- a/ext/PerlIO/Scalar/Scalar.xs +++ b/ext/PerlIO/Scalar/Scalar.xs @@ -236,6 +236,12 @@ PerlIOScalar_open(pTHX_ PerlIO_funcs *self, PerlIO_list_t *layers, IV n, const c return NULL; } +PerlIO * +PerlIOScalar_dup(pTHX_ PerlIO *f, PerlIO *o, CLONE_PARAMS *param) +{ + /* FIXME - Needs more work */ + return PerlIOBase_dup(aTHX_ f, o, param); +} PerlIO_funcs PerlIO_scalar = { "Scalar", @@ -246,6 +252,7 @@ PerlIO_funcs PerlIO_scalar = { PerlIOScalar_open, NULL, PerlIOScalar_fileno, + PerlIOScalar_dup, PerlIOBase_read, PerlIOScalar_unread, PerlIOScalar_write, diff --git a/ext/PerlIO/Via/Via.xs b/ext/PerlIO/Via/Via.xs index fcf316c3fc..2e029dbded 100644 --- a/ext/PerlIO/Via/Via.xs +++ b/ext/PerlIO/Via/Via.xs @@ -54,7 +54,6 @@ PerlIOVia_fetchmethod(pTHX_ PerlIOVia *s,char *method,CV **save) { return *save = (CV *) -1; } - } SV * @@ -492,6 +491,13 @@ PerlIOVia_eof(PerlIO *f) return (result) ? SvIV(result) : PerlIOBase_eof(f); } +PerlIO * +PerlIOVia_dup(pTHX_ PerlIO *f, PerlIO *o, CLONE_PARAMS *param) +{ + /* FIXME - Needs more work */ + return PerlIOBase_dup(aTHX_ f, o, param); +} + PerlIO_funcs PerlIO_object = { "Via", sizeof(PerlIOVia), @@ -501,6 +507,7 @@ PerlIO_funcs PerlIO_object = { NULL, /* PerlIOVia_open, */ PerlIOVia_getarg, PerlIOVia_fileno, + PerlIOVia_dup, PerlIOVia_read, PerlIOVia_unread, PerlIOVia_write, |