Commit 5a181d43 authored by antirez's avatar antirez
Browse files

rio.c file somewhat documented so that the casual reader can understand what's...

rio.c file somewhat documented so that the casual reader can understand what's going on without reading the code.
parent a3af8d8e
/* rio.c is a simple stream-oriented I/O abstraction that provides an interface
* to write code that can consume/produce data using different concrete input
* and output devices. For instance the same rdb.c code using the rio abstraction
* can be used to read and write the RDB format using in-memory buffers or files.
*
* A rio object provides the following methods:
* read: read from stream.
* write: write to stream.
* tell: get the current offset.
*
* It is also possible to set a 'checksum' method that is used by rio.c in order
* to compute a checksum of the data written or read, or to query the rio object
* for the current checksum. */
#include "fmacros.h"
#include <string.h>
#include <stdio.h>
......@@ -65,6 +79,10 @@ void rioInitWithBuffer(rio *r, sds s) {
r->io.buffer.pos = 0;
}
/* ------------------------------ Higher level interface ---------------------------
* The following higher level functions use lower level rio.c functions to help
* generating the Redis protocol for the Append Only File. */
/* Write multi bulk count in the format: "*<count>\r\n". */
size_t rioWriteBulkCount(rio *r, char prefix, int count) {
char cbuf[128];
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment