PHP Manual
Prev |  | Next

# struct php_stream_ops

struct php_stream_ops -- Holds member functions for a stream implementation

## Description

    typedef struct _php_stream_ops {
                 /* all streams MUST implement these operations */
                 size_t (*write)(php_stream *stream, const char *buf, size_t count TSRMLS_DC);
                 size_t (*read)(php_stream *stream, char *buf, size_t count TSRMLS_DC);
                 int (*close)(php_stream *stream, int close_handle TSRMLS_DC);
                 int (*flush)(php_stream *stream TSRMLS_DC);

                 const char *label; /* name describing this class of stream */

                 /* these operations are optional, and may be set to NULL if the stream does not
                  * support a particular operation */
                int (*seek)(php_stream *stream, off_t offset, int whence TSRMLS_DC);
                char *(*gets)(php_stream *stream, char *buf, size_t size TSRMLS_DC);
                int (*cast)(php_stream *stream, int castas, void **ret TSRMLS_DC);
                int (*stat)(php_stream *stream, php_stream_statbuf *ssb TSRMLS_DC);
            } php_stream_ops;

Prev | Home | Next
struct php_stream_dirent | Up | struct php_stream_wrapper