1998-04-04 03:23:21 -04:00
|
|
|
\section{Standard Modules \module{anydbm} and \module{dumbdbm}}
|
1998-02-18 11:05:47 -04:00
|
|
|
\label{module-anydbm}
|
|
|
|
\label{module-dumbdbm}
|
1997-04-03 18:41:49 -04:00
|
|
|
\stmodindex{anydbm}
|
|
|
|
\stmodindex{dumbdbm}
|
|
|
|
|
1998-02-18 11:05:47 -04:00
|
|
|
\module{anydbm} is a generic interface to variants of the DBM
|
1997-04-03 18:41:49 -04:00
|
|
|
database--DBM, GDBM, or dbhash. If none of these modules is
|
1998-02-18 11:05:47 -04:00
|
|
|
installed, the slow-but-simple implementation in module \module{dumbdbm}
|
1997-05-08 23:23:45 -03:00
|
|
|
will be used. Both modules provide the same interface:
|
1997-04-03 18:41:49 -04:00
|
|
|
|
1997-11-30 01:38:44 -04:00
|
|
|
% not the best solution, but it's what you get for documenting both
|
|
|
|
% at the same time.
|
1998-02-13 02:58:54 -04:00
|
|
|
\setindexsubitem{(in modules anydbm, dumbdbm)}
|
1997-11-30 01:38:44 -04:00
|
|
|
|
1998-03-17 02:33:25 -04:00
|
|
|
\begin{funcdesc}{open}{filename\optional{, flag, mode}}
|
1998-02-18 11:05:47 -04:00
|
|
|
Open the database file \var{filename} and return a corresponding object.
|
1997-04-03 18:41:49 -04:00
|
|
|
The optional \var{flag} argument can be
|
|
|
|
\code{'r'} to open an existing database for reading only,
|
|
|
|
\code{'w'} to open an existing database for reading and writing,
|
|
|
|
\code{'c'} to create the database if it doesn't exist, or
|
|
|
|
\code{'n'}, which will always create a new empty database. If not
|
|
|
|
specified, the default value is \code{'r'}.
|
|
|
|
|
|
|
|
The optional \var{mode} argument is the \UNIX{} mode of the file, used
|
|
|
|
only when the database has to be created. It defaults to octal
|
1997-05-08 23:23:45 -03:00
|
|
|
\code{0666} (and will be modified by the prevailing umask).
|
1997-04-03 18:41:49 -04:00
|
|
|
\end{funcdesc}
|
|
|
|
|
1998-02-18 11:05:47 -04:00
|
|
|
The object returned by \function{open()} supports most of the same
|
1997-04-03 18:41:49 -04:00
|
|
|
functionality as dictionaries; keys and their corresponding values can
|
1998-02-18 11:05:47 -04:00
|
|
|
be stored, retrieved, and deleted, and the \method{has_key()} and
|
|
|
|
\method{keys()} methods are available. Keys and values must always be
|
1997-05-08 23:23:45 -03:00
|
|
|
strings.
|
1997-04-03 18:41:49 -04:00
|
|
|
|
1998-02-18 11:05:47 -04:00
|
|
|
Both modules also export the exception \exception{error}, which is
|
|
|
|
raised for various problems. The \exception{anydbm.error} exception
|
|
|
|
is simply a different name for the \exception{error} exception of the
|
|
|
|
underlying implementation module used.
|