io.ops
Parrot's IO API
- close(invar PMC)
 
- Close IO object $1
 
- fdopen(out PMC,
in INT,
in STR)
 
- Create ParrotIO object in $1 as a copy of file descriptor $2.
 
- RT#42373: integral file descriptors might not exist outside of the UNIX platform.
This op needs work.
 
- getfd(out INT,
invar PMC)
 
- Get the file descriptor out of the ParrotIO object $2 and store it in $1
 
- RT#42373: integral file descriptors might not exist outside of the UNIX platform.
 
- getstdin(out PMC)
 
- Create a new ParrotIO object for the stdin file descriptor and store it in $1
 
- getstdout(out PMC)
 
- Create a new ParrotIO object for the stdout file descriptor and store it in $1
 
- getstderr(out PMC)
 
- Create a new ParrotIO object for the stderr file descriptor and store it in $1
 
- pioctl(out INT,
invar PMC,
in INT,
in INT)
 
- Perform an operation an an IO object.
This is a general purpose hook for setting various flags,
modes,
etc.
Examples: setting the record separator or setting the buffering
 
- open(out PMC,
in STR,
in STR)
 
- Open URL (file,
address,
database,
in core image) named $2 with Perl style mode string in $3 and create an IO object in $1.
 
- open(out PMC,
in STR)
 
- Open URL (file,
address,
database,
in core image) named $2 with read/write mode and create an IO object in $1.
 
- print(in INT)
 
- print(in NUM)
 
- print(invar PMC)
 
- print(in STR)
 
- Print $1 to standard output.
 
- printerr(in INT)
 
- printerr(in NUM)
 
- printerr(in STR)
 
- printerr(invar PMC)
 
- Print $1 to standard error.
 
- print(invar PMC,
in INT)
 
- print(invar PMC,
in NUM)
 
- print(invar PMC,
in STR)
 
- print(invar PMC,
invar PMC)
 
- Print $2 on the IO stream object $1.
 
- read(out STR,
in INT)
 
- Read up to N bytes from standard input stream
 
- read(out STR,
invar PMC,
in INT)
 
- Read up to N bytes from IO PMC stream.
 
- readline(out STR,
invar PMC)
 
- Read a line up to EOL from filehandle $2.
This switches the filehandle to linebuffer-mode.
 
- peek(out STR)
 
- Returns the next byte from standard input,
but does not remove it from the stream.
 
- peek(out STR,
invar PMC)
 
- Reads the next byte from an IO PMC,
but does not remove it from the stream.
 
- stat(out INT,
in STR,
in INT)
 
- stat(out INT,
in INT,
in INT)
 
- Stat the file.
Return stat element $3 for file $2 into $1.
The queryable items currently are:
 
 EXISTS     0
 FILESIZE   1
 ISDIR      2
 ISDEV      3
 CREATETIME 4 (Time file was created)
 ACCESSTIME 5 (Time file was last accessed)
 MODIFYTIME 6 (Time file data was changed)
 CHANGETIME 7 (Time file metadata was changed)
 BACKUPTIME 8 (Time of last backup)
 UID        9
 GID        10
- seek(invar PMC, in INT, in INT)
 
- seek: Set file position to offset $2 on IO stream $1. 'whence' is indicated by the value in $3.
 
- seek(invar PMC, in INT, in INT, in INT)
 
- 64bit seek: Set file position to offset ($2 << 32 | $3) on IO stream $1. 'whence' is indicated by the value in $4. This allows 64-bit seeks with only 32-bit INTVALS.
 
- tell(out INT, invar PMC)
 
- tell: Get the current file position of stream $2 and store it in $1. On systems where INTVAL is 32bit the result will be truncated if the position is beyond 2 GiB
 
- tell(out INT, out INT, invar PMC)
 
- 64bit tell: Get the current file positon of stream $3 in two parts of 32-bit each ($1 = pos >> 32, $2 = pos & 0xffffffff).
 
- socket(out PMC, in INT, in INT, in INT)
 
- sockaddr(out STR, in INT, in STR)
 
- connect(out INT, invar PMC, in STR)
 
- recv(out INT, invar PMC, out STR)
 
- send(out INT, invar PMC, in STR)
 
- poll(out INT, invar PMC, in INT, in INT, in INT)
 
- bind(out INT, invar PMC, in STR)
 
- listen(out INT, invar PMC, in INT)
 
- accept(out PMC, invar PMC)
 
Copyright (C) 2001-2006, The Perl Foundation.
This program is free software. It is subject to the same license as the Parrot interpreter itself.