diff options
Diffstat (limited to 'Doc/lib/libgdbm.tex')
-rw-r--r-- | Doc/lib/libgdbm.tex | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/Doc/lib/libgdbm.tex b/Doc/lib/libgdbm.tex deleted file mode 100644 index 0c36677..0000000 --- a/Doc/lib/libgdbm.tex +++ /dev/null @@ -1,100 +0,0 @@ -\section{\module{gdbm} --- - GNU's reinterpretation of dbm} - -\declaremodule{builtin}{gdbm} - \platform{Unix} -\modulesynopsis{GNU's reinterpretation of dbm.} - - -This module is quite similar to the \refmodule{dbm}\refbimodindex{dbm} -module, but uses \code{gdbm} instead to provide some additional -functionality. Please note that the file formats created by -\code{gdbm} and \code{dbm} are incompatible. - -The \module{gdbm} module provides an interface to the GNU DBM -library. \code{gdbm} objects behave like mappings -(dictionaries), except that keys and values are always strings. -Printing a \code{gdbm} object doesn't print the keys and values, and -the \method{items()} and \method{values()} methods are not supported. - -The module defines the following constant and functions: - -\begin{excdesc}{error} -Raised on \code{gdbm}-specific errors, such as I/O errors. -\exception{KeyError} is raised for general mapping errors like -specifying an incorrect key. -\end{excdesc} - -\begin{funcdesc}{open}{filename, \optional{flag, \optional{mode}}} -Open a \code{gdbm} database and return a \code{gdbm} object. The -\var{filename} argument is the name of the database file. - -The optional \var{flag} argument can be -\code{'r'} (to open an existing database for reading only --- default), -\code{'w'} (to open an existing database for reading and writing), -\code{'c'} (which creates the database if it doesn't exist), or -\code{'n'} (which always creates a new empty database). - -The following additional characters may be appended to the flag to -control how the database is opened: - -\begin{itemize} -\item \code{'f'} --- Open the database in fast mode. Writes to the database - will not be synchronized. -\item \code{'s'} --- Synchronized mode. This will cause changes to the database - will be immediately written to the file. -\item \code{'u'} --- Do not lock database. -\end{itemize} - -Not all flags are valid for all versions of \code{gdbm}. The -module constant \code{open_flags} is a string of supported flag -characters. The exception \exception{error} is raised if an invalid -flag is specified. - -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 -\code{0666}. -\end{funcdesc} - -In addition to the dictionary-like methods, \code{gdbm} objects have the -following methods: - -\begin{funcdesc}{firstkey}{} -It's possible to loop over every key in the database using this method -and the \method{nextkey()} method. The traversal is ordered by -\code{gdbm}'s internal hash values, and won't be sorted by the key -values. This method returns the starting key. -\end{funcdesc} - -\begin{funcdesc}{nextkey}{key} -Returns the key that follows \var{key} in the traversal. The -following code prints every key in the database \code{db}, without -having to create a list in memory that contains them all: - -\begin{verbatim} -k = db.firstkey() -while k != None: - print k - k = db.nextkey(k) -\end{verbatim} -\end{funcdesc} - -\begin{funcdesc}{reorganize}{} -If you have carried out a lot of deletions and would like to shrink -the space used by the \code{gdbm} file, this routine will reorganize -the database. \code{gdbm} will not shorten the length of a database -file except by using this reorganization; otherwise, deleted file -space will be kept and reused as new (key, value) pairs are added. -\end{funcdesc} - -\begin{funcdesc}{sync}{} -When the database has been opened in fast mode, this method forces any -unwritten data to be written to the disk. -\end{funcdesc} - - -\begin{seealso} - \seemodule{anydbm}{Generic interface to \code{dbm}-style databases.} - \seemodule{whichdb}{Utility module used to determine the type of an - existing database.} -\end{seealso} |