head 1.1; access; symbols; locks; strict; comment @# @; 1.1 date 99.09.11.12.42.09; author rse; state Exp; branches; next ; desc @@ 1.1 log @Incorporate stuff from RSE's Sfio98 variant @ text @ IO disciplines allow applications to extend stream data processing. See the Sfio manual pages for detail on creating discipline structures and inserting them into streams. This directory contains a number of useful disciplines, including one to uncompress a file compressed by the Unix compress program and one to make reading DOS text files more comfortable by translating \r\n to \n. Disciplines are reusable code, please contribute any interesting disciplines that you come up with. This is best done by sending such code to me at the address below. Sharing reusable code means that the name space must be managed. Therefore, I recommend that each discipline package provides the following public interface: Sfdisc_t* sfdcXXX(Sfio_t* f, other arguments): Create a discipline of the type XXX and insert it into the stream f. For example, the below call create a discipline that make the stream "f" act as if it's the union of the "n" streams given in "array". sfdcunion(Sfio_t* f, Sfio_t** array, int n); @