The cslib package defines a set of interface files that simplify writing C programs, particularly at the novice level.
Interface files
charset.h This interface exports an abstract type that represents sets of characters.
cmdscan.h This interface exports a simple command-line scanner.
cmpfn.h This interface exports several comparison functions for use with the other library packages.
cslib.h This interface defines a basic set of definitions that are shared among all interfaces in the package.
exception.h This interface exports a portable exception-handling mechanism for C.
filelib.h This interface exports a standardized set of tools for working with files across various platforms.
foreach.h This interface provides a simple syntactic extension for iterators that makes them much easier to read.
gevents.h This interface defines the event structure used in the graphics libraries.
ginteractors.h This interface exports a hierarchy of graphical interactors similar to those provided in the Java Swing libraries.
gmath.h This interface exports several functions for working with graphical geometry along with the constants PI and E.
gobjects.h This interface exports a hierarchy of graphical shapes based on the model developed for the ACM Java Graphics.
graph.h This interface exports a simple graph abstraction.
gtimer.h This interface exports a general interval timer.
gtypes.h This interface defines types for representing points, dimensions, and rectangles.
gwindow.h This interface defines an abstract type representing a graphics window.
hashmap.h This interface defines a map abstraction that associates string keys with values.
loadobj.h This interface supports dynamic loading of functions from object files.
map.h This interface defines a map abstraction that associates string-valued keys with values.
pqueue.h This interface defines a queue abstraction that dequeues elements in priority order.
queue.h This interface defines a queue abstraction with first-in/first-out semantics.
random.h This interface exports functions for generating pseudorandom numbers.
ref.h This interface exports several simple functions for allocating pointers to the atomic types.
set.h This interface exports an abstract type that represents sets of values.
simpio.h This interface exports several functions that simplify the reading of input data.
sound.h This interface defines an abstract type that represents a sound.
stack.h This interface exports an abstraction for stacks.
strbuf.h This interface defines a class that allows strings to grow by concatentation.
strlib.h This interface defines a general library for dynamically allocated strings.
thread.h This interface exports a platform-independent thread abstraction, along with simple functions for concurrency control.
tokenscanner.h This interface exports a scanner facility that divides a string into individual tokens.
vector.h This interface exports an array-like indexed collection type.