|
Bond 0.9
C++ Bond Runtime Library API Documentation
|
A concrete implementation of InputStream that performs input operations from a stdio FILE*. More...
#include <bond/io/stdioinputstream.h>
Public Member Functions | |
| StdioInputStream (FILE *file) | |
| Constructs a StdioInputStream object. | |
| StdioInputStream (const char *fileName) | |
| Constructs a StdioInputStream object that opens and owns the given file. | |
| StdioInputStream (StdioFileHandle &&handle) | |
| Constructs a StdioInputStream object. | |
| StdioInputStream (StdioInputStream &&other) | |
| Move-constructs a StdioInputStream object. | |
| virtual | ~StdioInputStream () |
| Destroys a StdioInputStream object, closing the file if it is owned. | |
| StdioInputStream (const StdioInputStream &other)=delete | |
| StdioInputStream & | operator= (const StdioInputStream &other)=delete |
| StdioInputStream & | operator= (StdioInputStream &&other) |
| Closes the file if it is owned and takes over the file of another StdioInputStream. | |
| bool | IsBound () const |
| Tests whether this stream is currently bound to a FILE object. | |
| virtual void | Close () override |
| Closes the FILE object, whether or not it is owned, and unbinds the stream. | |
| virtual void | VScan (const char *format, va_list argList) override |
| Reads formatted input from the stream using a variable argument list. | |
| virtual size_t | Read (uint8_t *bytes, size_t numBytes) override |
| Reads a sequence of bytes from the stream. | |
| virtual int | Read () override |
| Reads a single byte from the stream. | |
| virtual pos_t | GetPosition () const override |
| Returns the current position within the stream. | |
| virtual pos_t | GetEndPosition () const override |
| Returns the end position of the stream. | |
| virtual void | SetPosition (off_t offset) override |
| Sets the current position within the stream. | |
| virtual void | SetPositionFromEnd (off_t offset) override |
| Sets the current position relative to the end of the stream. | |
| virtual void | AddOffset (off_t offset) override |
| Advances the current position by the given offset. | |
| virtual bool | IsEof () const override |
| Tests whether the current position is at or beyond the end of the stream. | |
| virtual bool | HasError () const override |
| Tests whether the stream is currently in an error state. | |
| virtual void | ClearError () override |
| Clears the current error state of the stream. | |
| Public Member Functions inherited from Bond::InputStream | |
| virtual | ~InputStream () |
| Destroys an InputStream object. | |
| virtual void | Scan (const char *format,...) |
| Reads formatted input from the stream. | |
| size_t | Read (char *bytes, size_t numBytes) |
| Reads a sequence of bytes from the stream into a character buffer. | |
| Public Member Functions inherited from Bond::Stream | |
| virtual | ~Stream () |
| Destroys a Stream object. | |
Additional Inherited Members | |
| Public Types inherited from Bond::Stream | |
| typedef long | pos_t |
| A type used to represent absolute positions within a stream. | |
| typedef long | off_t |
| A type used to represent relative offsets within a stream. | |
| Static Public Attributes inherited from Bond::Stream | |
| static const int | Eof = -1 |
| A special value returned by single-byte input functions to indicate end of stream. | |
A concrete implementation of InputStream that performs input operations from a stdio FILE*.
StdioInputStream adapts a C stdio FILE object to the InputStream interface. The stream may be bound either to an existing FILE pointer or to a file opened and owned through a StdioFileHandle.
|
inlineexplicit |
Constructs a StdioInputStream object.
| file | The stdio FILE object from which input will be read. The file is not owned by the StdioInputStream, so it is not closed when the StdioInputStream is destroyed, but it is closed by Close(). |
|
explicit |
Constructs a StdioInputStream object that opens and owns the given file.
Throws a Bond::Exception if the file fails to open.
| fileName | The name of the file to open for reading in binary mode, encoded in UTF-8. |
|
inlineexplicit |
Constructs a StdioInputStream object.
| handle | An owning file handle whose FILE object will be used for input operations. |
|
inline |
Move-constructs a StdioInputStream object.
| other | The StdioInputStream object from which resources will be moved. |
|
inlinevirtual |
Destroys a StdioInputStream object, closing the file if it is owned.
|
delete |
|
inlineoverridevirtual |
Advances the current position by the given offset.
| offset | The signed amount by which the current position should be adjusted. |
Implements Bond::Stream.
|
inlineoverridevirtual |
Clears the current error state of the stream.
Implements Bond::Stream.
|
overridevirtual |
Closes the FILE object, whether or not it is owned, and unbinds the stream.
Reimplemented from Bond::Stream.
|
overridevirtual |
Returns the end position of the stream.
Implements Bond::Stream.
|
inlineoverridevirtual |
Returns the current position within the stream.
Implements Bond::Stream.
|
inlineoverridevirtual |
Tests whether the stream is currently in an error state.
Implements Bond::Stream.
|
inline |
Tests whether this stream is currently bound to a FILE object.
|
inlineoverridevirtual |
Tests whether the current position is at or beyond the end of the stream.
Implements Bond::Stream.
|
delete |
| StdioInputStream & Bond::StdioInputStream::operator= | ( | StdioInputStream && | other | ) |
Closes the file if it is owned and takes over the file of another StdioInputStream.
| other | The StdioInputStream object from which resources will be moved. |
|
inlineoverridevirtual |
Reads a single byte from the stream.
Implements Bond::InputStream.
|
inlineoverridevirtual |
Reads a sequence of bytes from the stream.
| bytes | The destination buffer where the bytes will be written. |
| numBytes | The maximum number of bytes to read. |
Reimplemented from Bond::InputStream.
|
inlineoverridevirtual |
Sets the current position within the stream.
| offset | The absolute position to which the stream should be moved. |
Implements Bond::Stream.
|
inlineoverridevirtual |
Sets the current position relative to the end of the stream.
| offset | The offset from the end position to which the stream should be moved, i.e. the new position is GetEndPosition() + offset, so offset is normally zero or negative. |
Implements Bond::Stream.
|
inlineoverridevirtual |
Reads formatted input from the stream using a variable argument list.
| format | A scanf-style format string describing the values to be read. |
| argList | A variable argument list containing pointers to storage for the parsed values. |
Implements Bond::InputStream.