www.digitalmars.com

D Programming Language 2.0

Last update Wed Apr 11 21:24:27 2012

std.cstream

Jump to: CFile close cstream derr din dout eof file flush getc readBlock seek ungetc writeBlock writeLine writeLineW

The std.cstream module bridges std.c.stdio (or std.stdio) and std.stream. Both std.c.stdio and std.stream are publicly imported by std.cstream.

License:
Boost License 1.0.

Authors:
Ben Hinkle

Source:
std/cstream.d

class CFile: std.stream.Stream;
A Stream wrapper for a C file of type FILE*.

this(shared(_iobuf)* cfile, FileMode mode, bool seekable = false);
Create the stream wrapper for the given C file.

Parameters:
FileMode mode a bitwise combination of FileMode.In for a readable file and FileMode.Out for a writeable file.
bool seekable indicates if the stream should be seekable.

@property shared(_iobuf)* file();
@property void file(shared(_iobuf)* cfile);
Property to get or set the underlying file for this stream. Setting the file marks the stream as open.

void flush();
void close();
bool eof();
char getc();
char ungetc(char c);
size_t readBlock(void* buffer, size_t size);
size_t writeBlock(const void* buffer, size_t size);
ulong seek(long offset, SeekPos rel);
void writeLine(const(char)[] s);
void writeLineW(const(wchar)[] s);
Overrides of the Stream methods to call the underlying FILE* C functions.

CFile din;
CFile wrapper of std.c.stdio.stdin (not seekable).

CFile dout;
CFile wrapper of std.c.stdio.stdout (not seekable).

CFile derr;
CFile wrapper of std.c.stdio.stderr (not seekable).