|  |  |  | Raptor RDF Syntax Library Manual |  | 
|---|---|---|---|---|
| Top | Description | ||||
typedef raptor_iostream; int (*raptor_iostream_init_func) (void *context); void (*raptor_iostream_finish_func) (void *context); int (*raptor_iostream_write_byte_func) (void *context,const int byte); int (*raptor_iostream_write_bytes_func) (void *context,const void *ptr,size_t size,size_t nmemb); int (*raptor_iostream_write_end_func) (void *context); int (*raptor_iostream_read_bytes_func) (void *context,void *ptr,size_t size,size_t nmemb); int (*raptor_iostream_read_eof_func) (void *context); raptor_iostream_handler; raptor_iostream * raptor_new_iostream_from_handler (raptor_world *world,void *user_data,const raptor_iostream_handler * const handler); raptor_iostream * raptor_new_iostream_from_sink (raptor_world *world); raptor_iostream * raptor_new_iostream_from_filename (raptor_world *world,const char *filename); raptor_iostream * raptor_new_iostream_from_file_handle (raptor_world *world,FILE *handle); raptor_iostream * raptor_new_iostream_from_string (raptor_world *world,void *string,size_t length); raptor_iostream * raptor_new_iostream_to_sink (raptor_world *world); raptor_iostream * raptor_new_iostream_to_filename (raptor_world *world,const char *filename); raptor_iostream * raptor_new_iostream_to_file_handle (raptor_world *world,FILE *handle); raptor_iostream * raptor_new_iostream_to_string (raptor_world *world,void **string_p,size_t *length_p,raptor_data_malloc_handler const malloc_handler); void raptor_free_iostream (raptor_iostream *iostr); int raptor_iostream_hexadecimal_write (unsigned int integer,int width,raptor_iostream *iostr); int raptor_iostream_read_bytes (void *ptr,size_t size,size_t nmemb,raptor_iostream *iostr); int raptor_iostream_read_eof (raptor_iostream *iostr); unsigned long raptor_iostream_tell (raptor_iostream *iostr); int raptor_iostream_counted_string_write (const void *string,size_t len,raptor_iostream *iostr); int raptor_iostream_decimal_write (int integer,raptor_iostream *iostr); int raptor_iostream_string_write (const void *string,raptor_iostream *iostr); int raptor_iostream_write_byte (const int byte,raptor_iostream *iostr); int raptor_iostream_write_bytes (const void *ptr,size_t size,size_t nmemb,raptor_iostream *iostr); int raptor_iostream_write_end (raptor_iostream *iostr); int raptor_bnodeid_ntriples_write (const unsigned char *bnodeid,size_t len,raptor_iostream *iostr); int raptor_string_ntriples_write (const unsigned char *string,size_t len,const char delim,raptor_iostream *iostr); int raptor_string_python_write (const unsigned char *string,size_t len,const char delim,int flags,raptor_iostream *iostr);
An class providing an I/O writer abstraction that allows generating
output that can be stored or passed on to system files, strings
allocated in memory (usually via raptor_stringbuffer), system
file handles (FILE*) or to a user function.
int                 (*raptor_iostream_init_func)        (void *context);
Handler function for raptor_iostream initialising.
| 
 | stream context data | 
| Returns : | non-0 on failure. | 
void                (*raptor_iostream_finish_func)      (void *context);
Handler function for raptor_iostream terminating.
| 
 | stream context data | 
int (*raptor_iostream_write_byte_func) (void *context,const int byte);
Handler function for implementing raptor_iostream_write_byte().
| 
 | stream context data | 
| 
 | byte to write | 
| Returns : | non-0 on failure. | 
int (*raptor_iostream_write_bytes_func) (void *context,const void *ptr,size_t size,size_t nmemb);
Handler function for implementing raptor_iostream_write_bytes().
| 
 | stream context data | 
| 
 | pointer to bytes to write | 
| 
 | size of item | 
| 
 | number of items | 
| Returns : | non-0 on failure. | 
int                 (*raptor_iostream_write_end_func)   (void *context);
Handler function for implementing raptor_iostream_write_end().
| 
 | stream context data | 
| Returns : | non-0 on failure. | 
int (*raptor_iostream_read_bytes_func) (void *context,void *ptr,size_t size,size_t nmemb);
Handler function for implementing raptor_iostream_read_bytes().
| 
 | stream context data | 
| 
 | pointer to buffer to read into | 
| 
 | size of buffer | 
| 
 | number of items | 
| Returns : | number of items read, 0 or < sizeon EOF, <0 on failure | 
int                 (*raptor_iostream_read_eof_func)    (void *context);
Handler function for implementing raptor_iostream_read_eof().
| 
 | stream context data | 
| Returns : | non-0 if EOF | 
typedef struct {
  int version;
  /* V1 functions */
  raptor_iostream_init_func         init;
  raptor_iostream_finish_func       finish;
  raptor_iostream_write_byte_func   write_byte;
  raptor_iostream_write_bytes_func  write_bytes;
  raptor_iostream_write_end_func    write_end;
  /* V2 functions */
  raptor_iostream_read_bytes_func   read_bytes;
  raptor_iostream_read_eof_func     read_eof;
} raptor_iostream_handler;
I/O stream implementation handler structure.
| interface version. Presently 1 or 2. | |
| initialisation handler - optional, called at most once (V1) | |
| raptor_iostream_finish_func  | finishing handler - optional, called at most once (V1) | 
| raptor_iostream_write_byte_func  | write byte handler - required (for writing) (V1) | 
| raptor_iostream_write_bytes_func  | write bytes handler - required (for writing) (V1) | 
| raptor_iostream_write_end_func  | write end handler - optional (for writing), called at most once (V1) | 
| raptor_iostream_read_bytes_func  | read bytes handler - required (for reading) (V2) | 
| raptor_iostream_read_eof_func  | read EOF handler - required (for reading) (V2) | 
raptor_iostream * raptor_new_iostream_from_handler (raptor_world *world,void *user_data,const raptor_iostream_handler * const handler);
Create a new iostream over a user-defined handler
| 
 | raptor_world object | 
| 
 | pointer to context information to pass in to calls | 
| 
 | pointer to handler methods | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream *   raptor_new_iostream_from_sink       (raptor_world *world);
Create a new read iostream from a sink.
| 
 | raptor world | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream * raptor_new_iostream_from_filename (raptor_world *world,const char *filename);
Constructor - create a new iostream reading from a filename.
| 
 | raptor world | 
| 
 | Input filename to open and read from | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream * raptor_new_iostream_from_file_handle (raptor_world *world,FILE *handle);
Constructor - create a new iostream reading from a file_handle.
The handle must already be open for reading.
NOTE: This does not fclose the handle when it is finished.
| 
 | raptor world | 
| 
 | Input file_handle to open and read from | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream * raptor_new_iostream_from_string (raptor_world *world,void *string,size_t length);
Constructor - create a new iostream reading from a string.
| 
 | raptor world | 
| 
 | pointer to string | 
| 
 | length of string | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream *   raptor_new_iostream_to_sink         (raptor_world *world);
Create a new write iostream to a sink.
| 
 | raptor_world object | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream * raptor_new_iostream_to_filename (raptor_world *world,const char *filename);
Constructor - create a new iostream writing to a filename.
| 
 | raptor world | 
| 
 | Output filename to open and write to | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream * raptor_new_iostream_to_file_handle (raptor_world *world,FILE *handle);
Constructor - create a new iostream writing to a FILE*.
The handle must already be open for writing.
NOTE: This does not fclose the handle when it is finished.
| 
 | raptor world | 
| 
 | FILE* handle to write to | 
| Returns : | new raptor_iostream object or NULL on failure | 
raptor_iostream * raptor_new_iostream_to_string (raptor_world *world,void **string_p,size_t *length_p,raptor_data_malloc_handler const malloc_handler);
Constructor - create a new iostream writing to a string.
If malloc_handler is null, raptor will allocate it using it's
own memory allocator.  *string_p is set to NULL on failure (and
*length_p to 0 if length_p is not NULL).
| 
 | raptor world | 
| 
 | pointer to location to hold string | 
| 
 | pointer to location to hold length of string (or NULL) | 
| 
 | pointer to malloc()to use to make string (or NULL) | 
| Returns : | new raptor_iostream object or NULL on failure | 
void                raptor_free_iostream                (raptor_iostream *iostr);
Destructor - destroy an iostream.
| 
 | iostream object | 
int raptor_iostream_hexadecimal_write (unsigned int integer,int width,raptor_iostream *iostr);
Write an integer in hexadecimal to the iostream.
Always 0-fills the entire field and writes in uppercase A-F
| 
 | unsigned integer to format as hexadecimal | 
| 
 | field width | 
| 
 | raptor iostream | 
| Returns : | non-0 on failure | 
int raptor_iostream_read_bytes (void *ptr,size_t size,size_t nmemb,raptor_iostream *iostr);
Read bytes to the iostream.
| 
 | start of buffer to read objects into | 
| 
 | size of object | 
| 
 | number of objects to read | 
| 
 | raptor iostream | 
| Returns : | number of objects read, 0 or less than nmemb on EOF, <0 on failure | 
int                 raptor_iostream_read_eof            (raptor_iostream *iostr);
Check if an read iostream has ended
| 
 | raptor read iostream | 
| Returns : | non-0 if EOF (or not a read iostream) | 
unsigned long       raptor_iostream_tell                (raptor_iostream *iostr);
Get the offset in the iostream.
| 
 | raptor iostream | 
| Returns : | offset in iostream | 
int raptor_iostream_counted_string_write (const void *string,size_t len,raptor_iostream *iostr);
Write a counted string to the iostream.
| 
 | string | 
| 
 | string length | 
| 
 | raptor iostream | 
| Returns : | non-0 on failure | 
int raptor_iostream_decimal_write (int integer,raptor_iostream *iostr);
Write an integer in decimal to the iostream.
| 
 | integer to format as decimal | 
| 
 | raptor iostream | 
| Returns : | non-0 on failure | 
int raptor_iostream_string_write (const void *string,raptor_iostream *iostr);
Write a NULL-terminated string to the iostream.
| 
 | string | 
| 
 | raptor iostream | 
| Returns : | non-0 on failure | 
int raptor_iostream_write_byte (const int byte,raptor_iostream *iostr);
Write a byte to the iostream.
| 
 | byte to write | 
| 
 | raptor iostream | 
| Returns : | non-0 on failure | 
int raptor_iostream_write_bytes (const void *ptr,size_t size,size_t nmemb,raptor_iostream *iostr);
Write bytes to the iostream.
| 
 | start of objects to write | 
| 
 | size of object | 
| 
 | number of objects | 
| 
 | raptor iostream | 
| Returns : | number of objects actually written, which may be less than nmemb. <0 on failure | 
int                 raptor_iostream_write_end           (raptor_iostream *iostr);
End writing to the iostream.
| 
 | raptor iostream | 
| Returns : | non-0 on failure | 
int raptor_bnodeid_ntriples_write (const unsigned char *bnodeid,size_t len,raptor_iostream *iostr);
Write a blank node ID in a form legal for N-Triples with _: prefix
| 
 | bnode ID to write | 
| 
 | length of bnode ID | 
| 
 | raptor_iostream to write to | 
| Returns : | non-0 on failure | 
int raptor_string_ntriples_write (const unsigned char *string,size_t len,const char delim,raptor_iostream *iostr);
Write an UTF-8 string using N-Triples escapes to an iostream.
| 
 | UTF-8 string to write | 
| 
 | length of UTF-8 string | 
| 
 | Terminating delimiter character for string (such as " or >) or \0 for no escaping. | 
| 
 | raptor_iostream to write to | 
| Returns : | non-0 on failure such as bad UTF-8 encoding. | 
int raptor_string_python_write (const unsigned char *string,size_t len,const char delim,int flags,raptor_iostream *iostr);
Write a UTF-8 string using Python-style escapes (N-Triples, Turtle, JSON) to an iostream.
| 
 | UTF-8 string to write | 
| 
 | length of UTF-8 string | 
| 
 | Terminating delimiter character for string (such as " or >) or \0 for no escaping. | 
| 
 | flags 0=N-Triples mode, 1=Turtle (allow raw UTF-8), 2=Turtle long string (allow raw UTF-8), 3=JSON | 
| 
 | raptor_iostream to write to | 
| Returns : | non-0 on failure such as bad UTF-8 encoding. |