Commit 5e97c9df authored by Guido van Rossum's avatar Guido van Rossum

Adding libshlex and libnetrc by Eric Raymond.

parent a7d9bdfa
......@@ -116,6 +116,7 @@ add new extensions to Python and how to embed it in other applications.
\input{libfileinput}
\input{libcalendar}
\input{libcmd}
\input{libshlex}
\input{liballos} % Generic Operating System Services
\input{libos}
......@@ -192,6 +193,7 @@ add new extensions to Python and how to embed it in other applications.
\input{libquopri}
\input{libmailbox}
\input{libmimify}
\input{libnetrc}
\input{librestricted}
\input{librexec}
......
% Module and documentation by Eric S. Raymond, 21 Dec 1998
\section{Standard Module \module{netrc}}
\stmodindex{netrc}
\label{module-netrc}
The \code{netrc} class parses and encapsulates the netrc file format
used by Unix's ftp(1) and other FTP clientd
\begin{classdesc}{netrc}{\optional{file}}
A \class{netrc} instance or subclass instance enapsulates data from
a netrc file. The initialization argument, if present, specifies the file
to parse. If no argument is given, the file .netrc in the user's home
directory will be read. Parse errors will throw a SyntaxError
exception with associated diagnostic information including the file
name, line number, and terminating token.
\end{classdesc}
\subsection{netrc Objects}
\label{netrc-objects}
A \class{netrc} instance has the following methods:
\begin{methoddesc}{authenticators}{}
Return a 3-tuple (login, account, password) of authenticators for the
given host. If the netrc file did not contain an entry for the given
host, return the tuple associated with the `default' entry. If
neither matching host nor default entry is available, return None.
\end{methoddesc}
\begin{methoddesc}{__repr__}{host}
Dump the class data as a string in the format of a netrc file.
(This discards comments and may reorder the entries.)
\end{methoddesc}
Instances of \class{netrc} have public instance variables:
\begin{memberdesc}{hosts}
Dictionmary mapping host names to login/account/password tuples. The
`default' entry, if any, is represented as a pseudo-host by that name.
\end{memberdesc}
\begin{memberdesc}{macros}
Dictionary mapping macro names to string lists.
\end{memberdesc}
% Module and documentation by Eric S. Raymond, 21 Dec 1998
\section{Standard Module \module{shlex}}
\stmodindex{shlex}
\label{module-shlex}
The \code{shlex} class makes it easy to write lexical analyzers for
simple syntaxes resembling that of the Unix shell. This will often
be useful for writing minilanguages, e.g. in run control files for
Python applications.
\begin{classdesc}{shlex}{\optional{stream}}
A \class{shlex} instance or subclass instance is a lexical analyzer
object. The initialization argument, if present, specifies where to
read characters from. It must be a file- or stream-like object with
\method{read} and \method{readline} methods. If no argument is given,
input will be taken from sys.stdin.
\end{classdesc}
\subsection{shlex Objects}
\label{shlex-objects}
A \class{shlex} instance has the following methods:
\begin{methoddesc}{get_token}{}
Return a token. If tokens have been stacked using \method{push_token},
pop a token off the stack. Otherwise, read one from the input stream.
If reading encounters an immediate end-of-file, '' is returned.
\end{methoddesc}
\begin{methoddesc}{push_token}{str}
Push the argument onto the token stack.
\end{methoddesc}
Instances of \class{shlex} subclasses have some public instance
variables which either control lexical analysis or can be used
for debugging:
\begin{memberdesc}{commenters}
The string of characters that are recognized as comment beginners.
All characters from the comment beginner to end of line are ignored.
Includes just '#' by default.
\end{memberdesc}
\begin{memberdesc}{wordchars}
The string of characters that will accumulate into multi-character
tokens. By default, includes all ASCII alphanumerics and underscore.
\end{memberdesc}
\begin{memberdesc}{whitespace}
Characters that will be considered whitespace and skipped. Whitespace
bounds tokens. By default, includes space and tab and linefeed and
carriage-return.
\end{memberdesc}
\begin{memberdesc}{quotes}
Characters that will be considered string quotes. The token
accumulates until the same quote is encountered again (thus, different
quote types protect each other as in the shall.) By default, includes
ASCII single and double quotes.
\end{memberdesc}
Note that any character not declared to be a word character,
whitespace, or a quote will be returned as a single-character token.
Quote and comment characters are not recognized within words. Thus,
the bare words ``ain't'' and ``ain#t'' would be returned as single
tokens by the default parser.
\begin{memberdesc}{lineno}
Source line number (count of newlines seen so far plus one).
\end{memberdesc}
\begin{memberdesc}{token}
The token buffer. It may be useful to examine this when catching exceptions.
\end{memberdesc}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment