INCLUDEFILE(mailus) includefile(concrete/intro) lsect(FDSTREAMBUFFER)(Using file descriptors with `streambuf' classes) lsubsect(OFDNBUF)(Classes for output operations) includefile(concrete/fdout) lsubsect(STRBUF)(Classes for input operations) includefile(concrete/fdinput) lsubsubsect(IFDBUF)(Using a one-character buffer) includefile(concrete/fdinbuf) lsubsubsect(IFDNBUF)(Using an n-character buffer) includefile(concrete/fdninbuf) lsubsubsect(IFDSEEK)(Seeking positions in `streambuf' objects) includefile(concrete/fdinseek) subsubsect(Multiple `unget' calls in `streambuf' objects) includefile(concrete/fdunget) subsect(Fixed-sized field extraction from istream objects) includefile(concrete/fistream) subsubsect(Member functions and example) includefile(concrete/fistreamexample) lsect(FORK)(The `fork' system call) includefile(concrete/fork) subsect(A basic Fork class) includefile(concrete/basicfork) subsect(Parents and Children) includefile(concrete/parents) lsubsect(REDIRECTION)(Redirection revisited) includefile(concrete/redirection) lsubsect(DAEMON)(The `Daemon' program) includefile(concrete/daemon) lsubsect(PIPE)(The class `Pipe') includefile(concrete/pipes) subsect(The class `ParentSlurp') includefile(concrete/parentslurp) subsect(Communicating with multiple children) includefile(concrete/children) subsubsect(The class `Selector': interface) includefile(concrete/select) subsubsect(The class `Selector': implementation) includefile(concrete/selectimpl) lsubsubsect(MONITOR)(The class `Monitor': interface) includefile(concrete/monitor) subsubsect(The class `Monitor': s_handler) includefile(concrete/shandler) subsubsect(The class `Monitor': the member `run') includefile(concrete/run) subsubsect(The class `Monitor': example) includefile(concrete/monitorexample) lsubsubsect(CHILD)(The class `Child') includefile(concrete/child) lsect(BITFUN)(Function objects performing bitwise operations) includefile(concrete/bitwise) COMMENT( lsect(A2X)(A text to anything converter) includefile(concrete/a2x) END) sect(Adding binary operators to classes) includefile(concrete/binop) subsect(Binary operators allowing promotions) includefile(concrete/promotions) lsect(RANGER)(Range-based for-loops and pointer-ranges) includefile(concrete/ranger) lsect(PROXY)(Distinguishing lvalues from rvalues with operator[]()) includefile(concrete/proxy) lsect(CONCRETEITER)(Implementing a `reverse_iterator') includefile(concrete/iterators) lsect(BisonAndFlex)(Using `bisonc++' and `flexc++') includefile(concrete/bisonflex) lsubsect(Flexpp)(Using `flexc++' to create a scanner) includefile(concrete/usingflex) subsubsect(The derived class `Scanner') includefile(concrete/lexer) subsubsect(The lexical scanner specification file) includefile(concrete/lexerspec) subsubsect(Implementing `Scanner') includefile(concrete/scanner) subsubsect(Using a `Scanner' object) includefile(concrete/scanmain) lsubsubsect(BUILDFLEX)(Building the program) includefile(concrete/scancompile) lsubsect(BISONFLEX)(Using `bisonc++' and `flexc++') includefile(concrete/usingbison) subsubsect(The `bisonc++' specification file) includefile(concrete/bison) lsubsubsubsect(BISONDEF)(The declaration section) includefile(concrete/definition) subsubsubsect(The grammar rules) includefile(concrete/rules) subsubsubsect(The Parser's header file) includefile(concrete/parserh) subsubsect(The `flexc++' specification file) includefile(concrete/bisonflexspec) subsubsect(Building the program) includefile(concrete/codegeneration) lsubsect(BISONSEM)(Bisonc++: using polymorphic semantic values) includefile(concrete/polymorphic) subsubsect(The parser using a polymorphic semantic value type) includefile(concrete/parser.yo) lsubsubsect(TAG) (Tagging the actual semantic type: the `enum class Tag') includefile(concrete/tag) subsubsect((Im)mutable semantic data: two base-structs) includefile(concrete/mutable) lsubsubsect(TAGTRAIT) (Traits of semantic type tags: the `TagTrait' trait class) includefile(concrete/tagtrait) subsubsect(Accessing data from derived classes) includefile(concrete/access) subsubsect(The polymorphic base class `SemBase') includefile(concrete/sembase) subsubsect(The class template `Semantic', derived from `SemBase') includefile(concrete/semantic) subsubsect(Adding new semantic data types) includefile(concrete/addtypes) lsubsubsect(SPSEMBASE)(The parser's semantic value: `spSemBase') includefile(concrete/spsembase) subsubsect(The parser specification file) includefile(concrete/polygram) subsubsect(The scanner using a polymorphic semantic value type) includefile(concrete/semscanner.yo) COMMENT( subsect(Using unrestricted unions as semantic values) includefile(concrete/unrestricted) END)