.\" @lbuf_close
.\" @lbuf_free
.\" @lbuf_snarf
+.\" @lbuf_setsize
.\" @lbuf_init
+.\" @lbuf_destroy
.SH "SYNOPSIS"
.nf
.B "#include <mLib/lbuf.h>"
initializes a line buffer ready for use. It is given three arguments:
.TP
.BI "lbuf *" b
-A pointer to the block of memory to use for the line buffer. This is
-all the memory the line buffer requires.
+A pointer to the block of memory to use for the line buffer. The line
+buffer will allocate memory to store incoming data automatically: this
+structure just contains bookkeeping information.
.TP
.BI "void (*" func ")(char *" s ", void *" p )
The
function returns the address and size of a free portion of the line
buffer's memory into which data may be written. The function is passed
the address
-.I l
+.I b
of the line buffer. Its result is the size of the free area, and it
writes the base address of this free space to the location pointed to by
the argument
selbuf \- line-buffering input selector
.\" @selbuf_enable
.\" @selbuf_disable
+.\" @selbuf_setsize
.\" @selbuf_init
+.\" @selbuf_destroy
.SH SYNOPSIS
.nf
.B "#include <mLib/selbuf.h>"
exact rules about what your line handling function should and shouldn't
do.
.PP
-The data for a
-.B selbuf
-selector is stored in an object of type
+The data for a line selector is stored in an object of type
.BR selbuf .
This object must be allocated by the caller, and initialized using the
.B selbuf_init