[frames | no frames]

## Module Hierarchy

- `twisted`: Twisted: The Framework Of Your Internet.
  - `application`: Configuration objects for Twisted Applications
    - `app`
    - `compat`: Backwards compatibility module
    - `internet`: Reactor-based Services
    - `service`: Service architecture for Twisted
    - `strports`: Port description language
  - `conch`: Twisted.Conch: The Twisted Shell.
    - `authorizer`: This module is deprecated.
    - `avatar`
    - `checkers`
    - `client`: Client support code for Conch.
      - `agent`: Accesses the key agent for user authentication.
      - `connect`
      - `default`
      - `direct`
      - `options`
      - `unix`
    - `credentials`
    - `error`: An error to represent bad things happening in Conch.
    - `identity`: This module is deprecated.
    - `insults`: Insults: a replacement for Curses/S-Lang.
      - `client`
      - `colors`
    - `interfaces`
    - `openssh_compat`: Support for OpenSSH configuration files.
      - `factory`
      - `primes`: Parsing for the moduli file, which contains Diffie-Hellman prime groups.
    - `pamauth`: Support for asynchronously authenticating using PAM.
    - `ssh`: An SSHv2 implementation for Twisted.
      - `agent`: Implements the key agent protocol.
      - `asn1`: A basic ASN.1 parser to parse private SSH keys.
      - `channel`: The parent class for all the SSH Channels.
      - `common`: Common functions for the SSH classes.
      - `connection`: This module contains the implementation of the ssh-connection service, which allows access to the shell and port-forwarding.
      - `factory`: A Factory for SSH servers, along with an OpenSSHFactory to use the same data sources as OpenSSH.
      - `filetransfer`
      - `forwarding`: This module contains the implementation of the TCP forwarding, which allows clients and servers to forward arbitrary TCP data across the connection.
      - `keys`: Handling of RSA and DSA keys.
      - `service`: The parent class for all the SSH services.
      - `session`: This module contains the implementation of SSHSession, which (by default) allows access to a shell and a python interpreter over SSH.
      - `sexpy`
      - `transport`: The lowest level SSH protocol.
      - `userauth`: Implementation of the ssh-userauth service.
    - `ttymodes`
    - `ui`: twisted.conch.ui is home to the UI elements for tkconch.
      - `ansi`: Module to parse ANSI escape sequences
      - `tkvt100`: Module to emulate a VT100 terminal in Tkinter.
    - `unix`
  - `copyright`: Copyright information for Twisted.
  - `cred`: Twisted Cred
    - `authorizer`: DEPRECATED.
    - `checkers`
    - `credentials`
    - `error`: Cred errors.
    - `identity`: DEPRECATED.
    - `perspective`: This module is for domain-specific representations of users.
    - `portal`
    - `service`: DEPRECATED.
    - `util`: Utility functions for authorization.
  - `enterprise`: Twisted Enterprise: database support for Twisted services.
    - `adbapi`: An asynchronous mapping to DB-API 2.0.
    - `dbcred`: Database backend for `twisted.cred`.
    - `dbgadgets`: Web interface for the Twisted db authentication system.
    - `reflector`
    - `row`: A (R)elational (O)bject (W)rapper.
    - `sqlreflector`
    - `util`
    - `xmlreflector`
  - `flow`: Twisted Flow: Generator support for data flows
    - `base`: flow.base
    - `controller`: flow.controller
    - `flow`: flow -- asynchronous data flows using generators This module provides a mechanism for using async data flows through the use of generators.
    - `pipe`: flow.pipe
    - `protocol`: flow.protocol
    - `stage`: flow.stage
    - `threads`: flow.thread
    - `web`: flow.web
    - `wrap`: flow.wrap
  - `im`: Instance Messenger, Pan-protocol chat client.
    - `baseaccount`
    - `basechat`: Base classes for Instance Messenger clients.
    - `basesupport`: Instance Messenger base classes for protocol support.
    - `gtkaccount`
    - `gtkchat`
    - `gtkcommon`
    - `interfaces`: Pan-protocol chat client.
    - `ircsupport`: IRC support for Instance Messenger.
    - `jyaccount`
    - `jychat`
    - `locals`
    - `pbsupport`: `twisted.words` support for Instance Messenger.
    - `proxyui`
    - `tap`
    - `tocsupport`: TOC (i.e.
  - `internet`: Twisted Internet: Asynchronous I/O and Events.
    - `abstract`: Support for generic select()able objects.
    - `address`: Address objects for network connections.
    - `app`: This module is DEPRECATED.
    - `base`: Very basic functionality for a Reactor implementation.
    - `cfreactor`: This module provides support for Twisted to interact with CoreFoundation CFRunLoops.
    - `default`: Default reactor base classes, and a select() based reactor.
    - `defer`: Support for results that aren't immediately available.
    - `error`: Exceptions and errors for use in twisted.internet modules.
    - `fdesc`: Utility functions for dealing with POSIX file descriptors.
    - `gtk2reactor`: This module provides support for Twisted to interact with the PyGTK2 mainloop.
    - `gtkreactor`: This module provides support for Twisted to interact with the PyGTK mainloop.
    - `interfaces`: Interface documentation.
    - `iocpreactor`
      - `abstract`
      - `address`
      - `client`
      - `error`
      - `iocpdebug`
      - `ops`
      - `proactor`
      - `server`
      - `tcp`
      - `udp`
      - `util`
    - `javareactor`: A java implementation of a ``select'' loop.
    - `kqreactor`: A kqueue()/kevent() based implementation of the Twisted main loop.
    - `main`: Backwards compatability, and utility functions.
    - `pollreactor`: A poll() based implementation of the twisted main loop.
    - `process`: UNIX Process management.
    - `protocol`: Standard implementations of Twisted protocol-related interfaces.
    - `pyuisupport`: This module integrates PyUI with twisted.internet's mainloop.
    - `qtreactor`: This module provides support for Twisted to interact with the PyQt mainloop.
    - `serialport`
      - `javaserialport`: Serial Port Protocol
      - `posixserialport`: Serial Port Protocol
      - `serialport`: Serial Port Protocol
      - `win32serialport`: Serial port support for Windows.
    - `ssl`: SSL transport.
    - `stdio`: Standard input/out/err support.
    - `task`: Scheduling utility methods and classes.
    - `tcp`: Various asynchronous TCP/IP classes.
    - `threads`: Extended thread dispatching support.
    - `tksupport`: This module integrates Tkinter with twisted.internet's mainloop.
    - `udp`: Various asynchronous UDP classes.
    - `unix`: Various asynchronous TCP/IP classes.
    - `utils`: Utility methods.
    - `win32eventreactor`: A win32event based implementation of the Twisted main loop.
    - `wxreactor`: This module provides support for Twisted to interact with the wxPython.
    - `wxsupport`: Old method of wxPython support for Twisted.
  - `lore`: The Twisted Documentation Generation System
    - `book`
    - `default`
    - `docbook`
    - `htmlbook`
    - `indexer`
    - `latex`
    - `lint`
    - `lmath`
    - `man2lore`: man2lore: Converts man page source (i.e.
    - `nevowlore`: Nevow support for lore.
    - `numberer`
    - `process`
    - `slides`: Rudimentary slide support for Lore.
    - `texi`
    - `tree`
  - `mail`: Twisted Mail: a Twisted E-Mail Server.
    - `alias`: Support for aliases(5) configuration files...
    - `bounce`
    - `mail`: Mail support for twisted python.
    - `maildir`: Maildir-style mailbox support
    - `pb`
    - `protocols`: Protocol support for twisted.mail.
    - `relay`: Support for relaying mail for twisted.mail
    - `relaymanager`: Infrastructure for relaying mail through smart host
    - `tap`: I am the support module for creating mail servers with 'mktap'
  - `manhole`: Twisted Manhole: interactive interpreter and direct manipulation support for Twisted.
    - `_inspectro`: An input/output window for the glade reactor inspector.
    - `explorer`: Support for python object introspection and exploration.
    - `gladereactor`: A modified gtk2 reactor with a Glade dialog in-process that allows you to stop, suspend, resume and inspect transports interactively.
    - `service`: `twisted.manhole` `PB` service implementation.
    - `telnet`: Telnet-based shell.
    - `ui`: Twisted Manhole UI: User interface for direct manipulation in Twisted.
      - `gtk2manhole`: Manhole client with a GTK v2.x front-end.
      - `gtkmanhole`
      - `pywidgets`
      - `spelunk_gnome`: Object browser GUI, GnomeCanvas implementation.
  - `names`: Resolving Internet Names
    - `authority`
    - `cache`
    - `client`: Asynchronous client DNS
    - `common`
    - `hosts`
    - `resolve`: Lookup a name using multiple resolvers.
    - `root`: Resolver implementation for querying successive authoritative servers to lookup a record, starting from the root nameservers.
    - `secondary`
    - `server`: Async DNS server
    - `tap`: Domain Name Server
  - `news`: Twisted News: an NNTP-based news service.
    - `database`: News server backend implementations
    - `news`: Maintainer: Jp Calderone
  - `pair`: Twisted Pair: The framework of your ethernet.
    - `tuntap`
  - `persisted`: Twisted Persisted: utilities for managing persistence.
    - `aot`: AOT: Abstract Object Trees The source-code-marshallin'est abstract-object-serializin'est persister this side of Marmalade!
    - `crefutil`: Utility classes for dealing with circular references.
    - `dirdbm`: DBM-style interface to a directory.
    - `journal`: Command-journalling persistence framework inspired by Prevayler.
      - `base`: Basic classes and interfaces for journal.
      - `picklelog`: Logging that uses pickles.
      - `rowjournal`: Journal using twisted.enterprise.row RDBMS support.
    - `marmalade`: Marmalade: jelly, with just a hint of bitterness.
    - `sob`: Save and load Small OBjects to and from files, using various formats.
    - `styles`: Different styles of persisted objects.
  - `protocols`: Twisted Protocols: a collection of internet protocol implementations.
    - `basic`: Basic protocols, such as line-oriented, netstring, and 32-bit-int prefixed strings.
    - `dict`: Dict client protocol implementation.
    - `dns`: DNS protocol implementation.
    - `ethernet`: Support for working directly with ethernet frames
    - `finger`: The Finger User Information Protocol (RFC 1288)
    - `ftp`: An FTP protocol implementation
    - `gps`: Global Positioning System protocols.
      - `nmea`: NMEA 0183 implementation
      - `rockwell`: Rockwell Semiconductor Zodiac Serial Protocol Coded from official protocol specs (Order No.
    - `htb`: Hierarchical Token Bucket traffic shaping.
    - `http`: HyperText Transfer Protocol implementation.
    - `ident`: Ident protocol implementation.
    - `imap4`: An IMAP4 protocol implementation...
    - `ip`: Support for working directly with IP packets
    - `irc`: Internet Relay Chat Protocol for client and server.
    - `jabber`: Twisted Jabber: Jabber Protocol Helpers
      - `client`
      - `component`
      - `jid`
      - `jstrports`: A temporary placeholder for client-capable strports, until we sufficient use cases get identified
    - `loopback`: Testing support for protocols -- loopback between client and server.
    - `mice`: Mice Protocols.
      - `mouseman`: Logictech MouseMan serial protocol.
    - `msn`: MSNP8 Protocol (client only) - semi-experimental
    - `nntp`: NNTP protocol support.
    - `oscar`: An implementation of the OSCAR protocol, which AIM and ICQ use to communcate.
    - `pcp`: Producer-Consumer Proxy.
    - `policies`: Resource limiting policies.
    - `pop3`: Post-office Protocol version 3
    - `portforward`: A simple port forwarder.
    - `postfix`: Postfix mail transport agent related protocols.
    - `raw`: Interface definitions for working with raw packets
    - `rawudp`: Implementation of raw packet interfaces for UDP
    - `shoutcast`: Chop up shoutcast stream into MP3s and metadata, if available.
    - `sip`: Session Initialization Protocol.
    - `smtp`: Simple Mail Transfer Protocol implementation.
    - `socks`: Implementation of the SOCKSv4 protocol.
    - `stateful`
    - `sux`: *S*mall, *U*ncomplicated *X*ML.
    - `telnet`: TELNET implementation, with line-oriented command handling.
    - `toc`: Implements a AOL Instant Messenger TOC server and client, using the Twisted framework.
    - `wire`: Implement standard (and unused) TCP protocols.
    - `xmlstream`
  - `python`: Twisted Python: Utilities and Enhancements for Python.
    - `compat`: Compatability module to provide backwards compatability for useful Python features.
    - `components`: Component architecture for Twisted.
    - `context`: Dynamic pseudo-scoping for Python.
    - `dir`: Fine-grained file listing
    - `dispatch`
    - `domhelpers`: Deprecated, use `twisted.web.domhelpers` instead.
    - `dxprofile`: Utility functions for reporting bytecode frequencies to Skip Montanaro's stat collector.
    - `failure`: Asynchronous-friendly error mechanism.
    - `filepath`
    - `finalize`: A module for externalized finalizers.
    - `formmethod`: Form-based method objects.
    - `hook`: I define support for hookable instance methods.
    - `htmlizer`
    - `lockfile`: Lock files.
    - `log`: Logging and metrics infrastructure.
    - `logfile`: A rotating, browsable log file.
    - `mutablestring`
    - `mvc`: A simple Model-View-Controller framework for separating presentation, business logic, and data.
    - `otp`: A One-Time Password System based on RFC 2289
    - `plugin`
    - `rebuild`: *Real* reloading support for Python.
    - `reflect`: Standardized versions of various cool and/or strange things that you can do with Python's reflection capabilities.
    - `roots`: Twisted Python Roots: an abstract hierarchy representation for Twisted.
    - `runtime`
    - `shortcut`: Creation of Windows shortcuts.
    - `syslog`
    - `text`: Miscellany of text-munging functions.
    - `threadable`: A module that will allow your program to be multi-threaded, micro-threaded, and single-threaded.
    - `threadpool`: twisted.threadpool: a pool of threads to which we dispatch tasks.
    - `timeoutqueue`: A Queue subclass that supports timeouts.
    - `urlpath`
    - `usage`: twisted.python.usage is a module for parsing/handling the command line of your program.
    - `util`
    - `win32`: Win32 utilities.
    - `zipstream`: An extremely asynch approach to unzipping files.
  - `runner`: Twisted runer: run and monitor processes
    - `inetd`: Twisted inetd.
    - `inetdconf`: Parser for inetd.conf files
    - `inetdtap`: Twisted inetd TAP support
    - `procmon`: ProcessMonitor: run processes, monitor progress, and restart when they die.
    - `procutils`: Utilities for dealing with processes.
  - `scripts`: Subpackage containing the modules that implement the command line tools.
    - `bookify`
    - `ckeygen`
    - `conch`
    - `htmlizer`: HTML pretty-printing for Python source code.
    - `im`
    - `lore`
    - `mailmail`: Implementation module for the `newtexaco` command.
    - `manhole`: Start a `twisted.manhole` client.
    - `mktap`
    - `tap2deb`
    - `tap2rpm`
    - `tapconvert`
    - `tkconch`: Implementation module for the `tkconch` command.
    - `tkmktap`: Implementation module for the graphical version of the `mktap` command.
    - `tkunzip`: Post-install GUI to compile to pyc and unpack twisted doco
    - `trial`
    - `twistd`
    - `twistw`
    - `websetroot`
  - `spread`: Twisted Spread: Spreadable (Distributed) Computing.
    - `banana`: Banana -- s-exp based protocol.
    - `flavors`: This module represents flavors of remotely acessible objects.
    - `interfaces`: Twisted Spread Interfaces.
    - `jelly`: S-expression-based persistence of python objects.
    - `newjelly`: S-expression-based persistence of python objects.
    - `pb`: Perspective Broker
    - `publish`: Persistently cached objects for PB.
    - `refpath`
    - `sturdy`: Persistent references for PB.
    - `ui`: Twisted Spread UI: UI utilities for various toolkits connecting to PB.
      - `gtk2util`
      - `gtkutil`
      - `tktree`: What I want it to look like:
      - `tkutil`: Utilities for building `PB` clients with `Tkinter`.
    - `util`: Utility classes for spread.
  - `tap`: Twisted TAP: Twisted Application Persistence builders for other Twisted servers.
    - `conch`: I am a support module for making SSH servers with mktap.
    - `ftp`: I am the support module for making a ftp server with mktap.
    - `manhole`: I am the support module for making a manhole server with mktap.
    - `portforward`: Support module for making a port forwarder with mktap.
    - `socks`: I am a support module for making SOCKSv4 servers with mktap.
    - `telnet`: Support module for making a telnet server with mktap.
    - `toc`: Support module for making TOC servers with mktap.
    - `web`: I am the support module for creating web servers with 'mktap'
    - `words`: I am a support module for creating chat servers with mktap.
  - `trial`: Unit testing framework.
    - `remote`: Remote reporting for Trial.
    - `reporter`
    - `runner`
    - `unittest`: Twisted Test Framework
    - `util`
  - `web`: Twisted Web: a Twisted Web Server.
    - `client`: HTTP client.
    - `distrib`: Distributed web servers.
    - `domhandlers`
    - `domhelpers`
    - `dominput`
    - `domtemplate`
    - `domwidgets`
    - `error`: I am the Twisted.Web error resources and exceptions.
    - `google`: "I'm Feeling Lucky" with Google.
    - `guard`: DEPRECATED.
    - `html`: I hold HTML generation helpers.
    - `microdom`: Micro Document Object Model: a partial DOM implementation with SUX.
    - `monitor`
    - `proxy`: Simplistic HTTP proxy support.
    - `resource`: I hold the lowest-level Resource class.
    - `rewrite`
    - `script`: I contain PythonScript, which is a very simple python script resource.
    - `server`: This is a web-sever which integrates with the twisted.internet infrastructure.
    - `soap`: SOAP support for twisted.web.
    - `static`: I deal with static resources.
    - `test`: I am a simple test resource.
    - `trp`: I contain ResourceUnpickler, which will unpickle any python object named with the file extension .trp.
    - `twcgi`: I hold resource classes and helper classes that deal with CGI scripts.
    - `util`
    - `vhost`: I am a virtual hosts implementation.
    - `widgets`: This module is DEPRECATED.
    - `wmvc`: webmvc.py
    - `woven`: Woven, the Web Object Visualization Environment.
      - `controller`
      - `dirlist`: Directory listing.
      - `flashconduit`
      - `form`
      - `guard`: Resource protection for Woven.
      - `input`
      - `interfaces`
      - `model`
      - `page`
      - `simpleguard`: A simple guard framework for implementing web sites that only need 'Anonymous' vs 'Logged on' distinction, but nothing more.
      - `tapestry`: Woven object collections.
      - `template`: DOMTemplate
      - `utils`
      - `view`
      - `widgets`
    - `xmlrpc`: A generic resource for publishing objects via XML-RPC.
  - `words`: Twisted Words: a Twisted Chat service.
    - `botbot`
    - `ircservice`: IRC interface to `twisted.words`.
    - `service`: Twisted Words Service objects.
    - `tendril`: Tendril between Words and IRC servers.
    - `webwords`: Web interface to `twisted.words`.
  - `xish`: Twisted X-ish: XML-ish DOM and XPath-ish engine
    - `domish`
    - `utility`
    - `xpath`
    - `xpathparser`: Run time libraries needed to run parsers generated by Yapps.

## Class Hierarchy

- `twisted.application.compat._NewService`: Wrap a twisted.internet.app.ApplicationService in new service API.
- `twisted.application.compat._ServiceNetwork`
- `twisted.application.service.Process`: Process running parameters
- `twisted.application.service.Service`: Base class for services
  - `twisted.trial.remote._Demo`: Demonstrate trial.remote by spawning trial in a subprocess and displaying results.
  - `twisted.application.internet._VolatileDataService`
    - `twisted.application.internet._AbstractClient`
      - `twisted.application.internet.GenericClient`: Connect to Generic
      - `twisted.application.internet.MulticastClient`: Connect to Multicast
      - `twisted.application.internet.SSLClient`: Connect to SSL
      - `twisted.application.internet.TCPClient`: Connect to TCP
      - `twisted.application.internet.UDPClient`: Connect to UDP
      - `twisted.application.internet.UNIXClient`: Connect to UNIX
      - `twisted.application.internet.UNIXDatagramClient`: Connect to UNIXDatagram
    - `twisted.application.internet._AbstractServer`
      - `twisted.application.internet.GenericServer`: Serve Generic clients
      - `twisted.application.internet.MulticastServer`: Serve Multicast clients
      - `twisted.application.internet.SSLServer`: Serve SSL clients
      - `twisted.application.internet.TCPServer`: Serve TCP clients
        - `twisted.runner.inetdtap.RPCServer`
      - `twisted.application.internet.UDPServer`: Serve UDP clients
      - `twisted.application.internet.UNIXDatagramServer`: Serve UNIXDatagram clients
      - `twisted.application.internet.UNIXServer`: Serve UNIX clients
    - `twisted.application.internet.TimerService`
      - `twisted.mail.mail.FileMonitoringService`
  - `twisted.application.service.MultiService`: Straightforward Service Container
    - `twisted.mail.mail.MailService`: An email service.
    - `twisted.protocols.jabber.component.ServiceManager`: Business logic representing a managed component connection to a Jabber router
  - `twisted.runner.procmon.ProcessMonitor`
  - `twisted.names.secondary.SecondaryAuthorityService`
  - `twisted.manhole.service.Service`
  - `twisted.protocols.jabber.component.Service`
- `twisted.conch.avatar.ConchUser`
- `twisted.conch.checkers.PluggableAuthenticationModulesChecker`
- `twisted.conch.checkers.SSHProtocolChecker`
- `twisted.conch.checkers.SSHPublicKeyDatabase`
- `twisted.conch.checkers.UNIXPasswordDatabase`
- `twisted.conch.credentials.PluggableAuthenticationModules`
- `twisted.conch.credentials.SSHPrivateKey`
- `twisted.conch.error.ConchError`
- `twisted.conch.error.IgnoreAuthentication`: This is thrown to let the UserAuthServer know it doesn't need to handle the authentication anymore.
- `twisted.conch.error.NotEnoughAuthentication`: This is thrown if the authentication is valid, but is not enough to successfully verify the user.
- `twisted.conch.error.ValidPublicKey`: This is thrown during the authentication process if the public key is valid for the user.
- `twisted.conch.interfaces.ISFTPFile`: This represents an open file on the server.
- `twisted.conch.ssh.channel.SSHChannel`
  - `twisted.conch.ssh.forwarding.SSHConnectForwardingChannel`
  - `twisted.conch.ssh.forwarding.SSHListenForwardingChannel`
    - `twisted.conch.ssh.forwarding.SSHListenClientForwardingChannel`
    - `twisted.conch.ssh.forwarding.SSHListenServerForwardingChannel`
  - `twisted.conch.ssh.session.SSHSession`
  - `twisted.conch.client.unix.SSHUnixChannel`
- `twisted.conch.ssh.keys.BadKeyError`: raised when a key isn't what we expected from it.
- `twisted.conch.ssh.service.SSHService`
  - `twisted.conch.ssh.connection.SSHConnection`
- `twisted.conch.ssh.session._DummyTransport`
- `twisted.conch.ui.ansi.AnsiParser`: Parser class for ANSI codes.
- `twisted.conch.ui.ansi.ColorText`: Represents an element of text along with the texts colors and additional attributes.
- `twisted.cred.checkers.AllowAnonymousAccess`
- `twisted.cred.checkers.FilePasswordDB`: A file-based, text-based username/password database.
- `twisted.cred.checkers.InMemoryUsernamePasswordDatabaseDontUse`
- `twisted.cred.credentials.Anonymous`
- `twisted.cred.credentials.CramMD5Credentials`
- `twisted.cred.credentials.UsernameHashedPassword`
  - `twisted.protocols.sip.DigestedCredentials`: Yet Another Simple Digest-MD5 authentication scheme
- `twisted.cred.credentials.UsernamePassword`
  - `twisted.protocols.imap4.LOGINCredentials`
  - `twisted.protocols.imap4.PLAINCredentials`
- `twisted.cred.error.DuplicateIdentity`: There already exists an identity with that name.
- `twisted.cred.error.LoginFailed`: The user's request to log in failed for some reason.
  - `twisted.cred.error.LoginDenied`: The realm rejected this login for some reason.
  - `twisted.cred.error.UnauthorizedLogin`: The user was not authorized to log in.
  - `twisted.cred.error.UnhandledCredentials`: A type of credentials were passed in with no knowledge of how to check them.
- `twisted.cred.error.Unauthorized`: Standard unauthorized error.
  - `twisted.cred.error.KeyNotFound`: None of the keys on your keyring seem to fit here.
  - `twisted.cred.error.UnauthorizedLogin`: The user was not authorized to log in.
- `twisted.cred.identity.Identity`: An identity, with different methods for verification.
  - `twisted.conch.identity.ConchIdentity`
    - `twisted.conch.identity.OpenSSHConchIdentity`
- `twisted.cred.perspective.Perspective`: I am an Identity's view onto a service.
  - `twisted.protocols.imap4.MemoryAccount`
  - `twisted.spread.pb.Perspective`: This class is DEPRECATED, because it relies on old cred APIs.
    - `twisted.words.service.Participant`
- `twisted.cred.portal.Portal`
- `twisted.enterprise.adbapi.Augmentation`: This class is now deprecated.
  - `twisted.enterprise.dbcred.DatabaseAuthorizer`: A PyPgSQL authorizer for Twisted Cred
  - `twisted.news.database.NewsStorageAugmentation`: A NewsStorage implementation using Twisted's asynchronous DB-API
  - `twisted.enterprise.sqlreflector.SQLReflector`: I reflect on a database and load RowObjects from it.
- `twisted.enterprise.adbapi.ConnectionPool`: I represent a pool of connections to a DB-API 2.0 compliant database.
- `twisted.enterprise.adbapi.Transaction`: A lightweight wrapper for a DB-API 'cursor' object.
- `twisted.enterprise.reflector.Reflector`: Base class for enterprise reflectors.
  - `twisted.enterprise.sqlreflector.SQLReflector`: I reflect on a database and load RowObjects from it.
  - `twisted.enterprise.xmlreflector.XMLReflector`: Reflector for twisted.enterprise that uses XML files.
- `twisted.enterprise.row.KeyFactory`: I create unique keys to use as primary key columns in database tables.
- `twisted.enterprise.row.RowObject`: I represent a row in a table in a relational database.
  - `twisted.enterprise.dbcred.IdentityRow`
  - `twisted.enterprise.dbcred.PerspectiveRow`
- `twisted.enterprise.row.StatementBatch`: I keep a set of SQL statements to be executed in a single batch.
- `twisted.enterprise.util.DBError`
- `twisted.enterprise.util._TableInfo`: (internal)
- `twisted.enterprise.util._TableRelationship`: (Internal)
- `twisted.enterprise.xmlreflector.XMLRowProxy`: Used to persist Row Objects as XML.
- `twisted.flow.base.Controller`: Flow controller
  - `twisted.flow.protocol._Protocol`: A concrete flow.Protocol for inheritance
  - `twisted.flow.controller.Block`: A controller which blocks on Cooperate events
  - `twisted.flow.controller.Deferred`: wraps up a Stage with a Deferred interface In this version, the results of the Stage are used to construct a list of results and then sent to deferred.
- `twisted.flow.base.Instruction`: Has special meaning when yielded in a flow
  - `twisted.flow.base.CallLater`: Instruction to support callbacks
    - `twisted.flow.wrap._DeferredInstruction`
    - `twisted.flow.base.Cooperate`: Requests that processing be paused so other tasks can resume Yield this object when the current chain would block or periodically during an intensive processing task.
    - `twisted.flow.stage.Instruction`
    - `twisted.flow.stage.Instruction`
    - `twisted.flow.threads.Instruction`
  - `twisted.flow.base.Stage`: Abstract base defining protocol for iterator/generators in a flow This is the primary component in the flow system, it is an iterable object which must be passed to a yield statement before each call to next().
    - `twisted.flow.wrap._Deferred`: Wraps a Deferred object into a stage; create with flow.wrap
    - `twisted.flow.wrap._Iterable`: Wrapper for iterable objects, pass in a next() function
    - `twisted.flow.wrap._List`: Wrapper for lists and tuple objects; don't create directly
    - `twisted.flow.wrap._String`: Wrapper for a string object; don't create directly use flow.wrap
    - `twisted.flow.controller.Block`: A controller which blocks on Cooperate events
    - `twisted.flow.stage.Callback`: Converts a single-thread push interface into a pull interface.
      - `twisted.flow.protocol._Protocol`: A concrete flow.Protocol for inheritance
    - `twisted.flow.stage.Concurrent`: Executes stages concurrently
    - `twisted.flow.stage.Map`: flow equivalent to map: Map(function, stage, ...
      - `twisted.flow.stage.Zip`: Zips two or more stages into a stream of N tuples
    - `twisted.flow.stage.Merge`: Merges two or more Stages results into a single stream
    - `twisted.flow.pipe.Pipe`: abstract stage which takes a single input stage
      - `twisted.flow.pipe.Filter`: flow equivalent to filter: Filter(function, source, ...
      - `twisted.flow.pipe.LineBreak`: pipe stage which breaks its input into lines
    - `twisted.flow.threads.Threaded`: A stage which runs a blocking iterable in a separate thread This stage tunnels output from an iterable executed in a separate thread to the main thread.
- `twisted.flow.base.NotReadyError`: Raised when a stage has not been subject to a yield
- `twisted.flow.base.Unsupported`: Indicates that the given stage does not know what to do with the flow instruction that was returned.
- `twisted.flow.threads.QueryIterator`: Converts a database query into a result iterator from __future__ import generators from twisted.enterprise import adbapi from twisted.internet import reactor from twisted.flow import flow from twisted.flow.threads import QueryIterator, Threaded dbpool = adbapi.ConnectionPool("SomeDriver",host='localhost', db='Database',user='User',passwd='Password') # # I test with...
- `twisted.im.baseaccount.AccountManager`: I am responsible for managing a user's accounts.
- `twisted.im.basechat.ChatUI`: A GUI chat client
- `twisted.im.basechat.ContactsList`: A GUI object that displays a contacts list
- `twisted.im.basechat.Conversation`: A GUI window of a conversation with a specific person
- `twisted.im.basechat.GroupConversation`: A conversation with a group of people.
- `twisted.im.basesupport.AbstractClientMixin`: Designed to be mixed in to a Protocol implementing class.
  - `twisted.im.ircsupport.IRCProto`
  - `twisted.im.tocsupport.TOCProto`
  - `twisted.im.pbsupport.TwistedWordsClient`: In some cases, this acts as an Account, since it a source of text messages (multiple Words instances may be on a single PB connection)
- `twisted.im.basesupport.AbstractGroup`
  - `twisted.im.ircsupport.IRCGroup`
  - `twisted.im.tocsupport.TOCGroup`
  - `twisted.im.pbsupport.TwistedWordsGroup`
- `twisted.im.basesupport.AbstractPerson`
  - `twisted.im.ircsupport.IRCPerson`
  - `twisted.im.tocsupport.TOCPerson`
  - `twisted.im.pbsupport.TwistedWordsPerson`: I a facade for a person you can talk to through a twisted.words service.
- `twisted.im.gtkaccount.AccountManager`
- `twisted.im.gtkaccount.DummyAccountForm`
- `twisted.im.gtkaccount.IRCAccountForm`
- `twisted.im.gtkaccount.NewAccount`
- `twisted.im.gtkaccount.PBAccountForm`
- `twisted.im.gtkaccount.TOCAccountForm`
- `twisted.im.gtkchat.ContactsList`
- `twisted.im.gtkchat.GtkChatClientUI`
- `twisted.im.gtkcommon.InputOutputWindow`
  - `twisted.im.gtkchat.Conversation`: GUI representation of a conversation.
  - `twisted.im.gtkchat.GroupConversation`
- `twisted.im.locals.Enum`
  - `twisted.im.locals.StatusEnum`
- `twisted.im.locals.OfflineError`: The requested action can't happen while offline.
- `twisted.internet.address.IPv4Address`: Object representing an IPv4 socket endpoint.
  - `twisted.internet.address._ServerFactoryIPv4Address`: Backwards compatability hack.
- `twisted.internet.address.UNIXAddress`: Object representing a UNIX socket endpoint.
- `twisted.internet.app.PortCollection`
- `twisted.internet.app.ServiceCollection`
- `twisted.internet.app._AbstractServiceCollection`
  - `twisted.internet.app.Application`: I am the `root object' in a Twisted process.
  - `twisted.internet.app.MultiService`: I am a collection of multiple services.
    - `twisted.internet.app.DependentMultiService`: I am a MultiService that starts services in insert order, and stops them in the reverse order.
- `twisted.internet.base.ReactorBase`: Default base class for Reactors.
  - `twisted.internet.default.PosixReactorBase`: A basis for reactors that use file descriptors.
    - `twisted.internet.cfreactor.CFReactor`
    - `twisted.internet.gtk2reactor.Gtk2Reactor`: GTK+-2 event loop reactor.
      - `twisted.manhole.gladereactor.GladeReactor`: GTK+-2 event loop reactor with GUI.
    - `twisted.internet.gtkreactor.GtkReactor`: GTK+ event loop reactor.
    - `twisted.internet.pollreactor.PollReactor`: A reactor that uses poll(2).
    - `twisted.internet.default.SelectReactor`: A select() based reactor - runs on all POSIX platforms and on Win32.
      - `twisted.internet.gtk2reactor.PortableGtkReactor`: Reactor that works on Windows.
      - `twisted.internet.gtkreactor.PortableGtkReactor`: Reactor that works on Windows.
    - `twisted.internet.win32eventreactor.Win32Reactor`: Reactor that uses Win32 event APIs.
- `twisted.internet.cfreactor.SelectableSocketWrapper`
- `twisted.internet.defer.AlreadyArmedError`
- `twisted.internet.defer.AlreadyCalledError`
- `twisted.internet.defer.Deferred`: This is a callback which will be put off until later.
  - `twisted.persisted.crefutil._Defer`
  - `twisted.flow.controller.Deferred`: wraps up a Stage with a Deferred interface In this version, the results of the Stage are used to construct a list of results and then sent to deferred.
  - `twisted.internet.defer.DeferredList`: I combine a group of deferreds into one callback.
- `twisted.internet.defer.TimeoutError`
- `twisted.internet.defer._nothing`
- `twisted.internet.error.AlreadyCalled`: Tried to cancel an already-called event
- `twisted.internet.error.AlreadyCancelled`: Tried to cancel an already-cancelled event
- `twisted.internet.error.BindError`: An error occurred binding to an interface
  - `twisted.internet.error.CannotListenError`: This gets raised by a call to startListening, when the object cannot start listening.
- `twisted.internet.error.ConnectError`: An error occurred while connecting
  - `twisted.internet.error.BadFileError`: File used for UNIX socket is no good
  - `twisted.internet.error.ConnectBindError`: Couldn't bind
  - `twisted.internet.error.ConnectionRefusedError`: Connection was refused by other side
  - `twisted.internet.error.NoRouteError`: No route to host
  - `twisted.internet.error.ServiceNameUnknownError`: Service name given as port is unknown
  - `twisted.internet.error.SSLError`: An SSL error occurred
  - `twisted.internet.error.TCPTimedOutError`: TCP connection timed out
  - `twisted.internet.error.UnknownHostError`: Hostname couldn't be looked up
  - `twisted.internet.error.UserError`: User aborted connection
    - `twisted.internet.error.TimeoutError`: User timeout caused connection failure
- `twisted.internet.error.ConnectInProgressError`: A connect operation was started and isn't done yet.
- `twisted.internet.error.ConnectionDone`: Connection was closed cleanly
  - `twisted.internet.error.ProcessDone`: A process has ended without apparent errors
- `twisted.internet.error.ConnectionLost`: Connection to the other side was lost in a non-clean fashion
  - `twisted.internet.error.ConnectionFdescWentAway`: Uh
  - `twisted.internet.error.ProcessTerminated`: A process has ended with a probable error condition
- `twisted.internet.error.DNSLookupError`: DNS lookup failed
- `twisted.internet.error.MessageLengthError`: Message is too long to send
- `twisted.internet.error.NotConnectingError`: The Connector was not connecting when it was asked to stop connecting
- `twisted.internet.error.NotListeningError`: The Port was not listening when it was asked to stop listening
- `twisted.internet.iocpreactor.tcp.TcpMixin`
- `twisted.internet.iocpreactor.util.StateEventMachineType`
- `twisted.internet.process.ProcessExitedAlready`: The process has already excited, and the operation requested can no longer be performed.
- `twisted.internet.protocol.AbstractDatagramProtocol`: Abstract protocol for datagram-oriented transports, e.g.
  - `twisted.internet.protocol.DatagramProtocol`: Protocol for datagram-oriented transport, e.g.
    - `twisted.protocols.sip.Base`: Base class for SIP clients and servers.
      - `twisted.protocols.sip.Proxy`: SIP proxy.
        - `twisted.protocols.sip.RegisterProxy`: A proxy that allows registration for a specific domain.
    - `twisted.internet.protocol.ConnectedDatagramProtocol`: Protocol for connected datagram-oriented transport.
  - `twisted.protocols.ethernet.EthernetProtocol`
  - `twisted.protocols.ip.IPProtocol`
  - `twisted.protocols.rawudp.RawUDPProtocol`
- `twisted.internet.protocol.BaseProtocol`: This is the abstract superclass of all protocols.
  - `twisted.internet.protocol.ProcessProtocol`: Processes have some additional methods besides receiving data.
    - `twisted.internet.utils._BackRelay`
    - `twisted.conch.ssh.session._ProtocolWrapper`: This class wraps a Protocol instance in a ProcessProtocol instance.
    - `twisted.internet.utils._ValueGetter`
    - `twisted.web.twcgi.CGIProcessProtocol`
    - `twisted.runner.procmon.LoggingProtocol`
    - `twisted.mail.alias.ProcessAliasProtocol`
    - `twisted.conch.ssh.session.SSHSessionProcessProtocol`
    - `twisted.trial.remote.TrialProcessProtocol`
  - `twisted.internet.protocol.Protocol`
    - `twisted.flow.protocol._Protocol`: A concrete flow.Protocol for inheritance
    - `twisted.protocols.wire.Chargen`: Generate repeating noise (RFC 864)
    - `twisted.protocols.wire.Daytime`: Send back the daytime in ASCII form (RFC 867)
    - `twisted.protocols.irc.DccFileReceiveBasic`: Bare protocol to receive a Direct Client Connection SEND stream.
      - `twisted.protocols.irc.DccFileReceive`: Higher-level coverage for getting a file from DCC SEND.
    - `twisted.protocols.irc.DccSendProtocol`: Protocol for an outgoing Direct Client Connection SEND.
    - `twisted.protocols.wire.Discard`: Discard any received data (RFC 863)
    - `twisted.protocols.ftp.DTP`: The Data Transfer Protocol for this FTP-PI instance all dtp_* methods return a deferred
    - `twisted.protocols.wire.Echo`: As soon as any data is received, write it back (RFC 862)
    - `twisted.protocols.toc.GetFileTransfer`
    - `twisted.runner.inetd.InetdProtocol`: Forks a child process on connectionMade, passing the socket as fd 0.
    - `twisted.conch.insults.client.InsultsClient`
    - `twisted.protocols.basic.Int16StringReceiver`: A receiver for int16-prefixed strings.
    - `twisted.protocols.basic.Int32StringReceiver`: A receiver for int32-prefixed strings.
    - `twisted.protocols.irc.IRC`: Internet Relay Chat server protocol.
      - `twisted.words.ircservice.IRCChatter`
      - `twisted.im.proxyui.IRCUserInterface`
    - `twisted.protocols.basic.LineOnlyReceiver`: A protocol that receives only lines.
      - `twisted.protocols.ident.IdentClient`
      - `twisted.protocols.ident.IdentServer`: The Identification Protocol (a.k.a., "ident", a.k.a., "the Ident Protocol") provides a means to determine the identity of a user of a particular TCP connection.
      - `twisted.protocols.pop3.POP3`
        - `twisted.mail.protocols.VirtualPOP3`: Virtual hosting POP3.
      - `twisted.protocols.pop3.POP3Client`
    - `twisted.protocols.basic.LineReceiver`: A protocol that receives lines and/or raw data, depending on mode.
      - `twisted.protocols.irc.DccChat`: Direct Client Connection protocol type CHAT.
      - `twisted.protocols.dict.DictClient`: dict (RFC2229) client
        - `twisted.protocols.dict.DictLookup`: Utility class for a single dict transaction.
      - `twisted.protocols.msn.FileReceive`: This class provides support for receiving files from contacts.
      - `twisted.protocols.msn.FileSend`: This class provides support for sending files to other contacts.
      - `twisted.protocols.finger.Finger`
      - `twisted.web.woven.flashconduit.FlashConduit`
      - `twisted.protocols.ftp.FTP`: Protocol Interpreter for the File Transfer Protocol
      - `twisted.protocols.ftp.FTPClient`: A Twisted FTP Client
      - `twisted.protocols.ftp.FTPFileListProtocol`: Parser for standard FTP file listings
      - `twisted.protocols.http.HTTPChannel`: A receiver for HTTP requests.
        - `twisted.web.proxy.Proxy`: This class implements a simple web proxy.
        - `twisted.web.proxy.ReverseProxy`: Implements a simple reverse proxy.
      - `twisted.protocols.http.HTTPClient`: A client for HTTP 1.0
        - `twisted.web.google.GoogleChecker`
        - `twisted.web.client.HTTPPageGetter`
          - `twisted.web.client.HTTPPageDownloader`
        - `twisted.protocols.msn.PassportLogin`: This class is used internally to obtain a login ticket from a passport HTTPS server -- it should not be used directly.
        - `twisted.protocols.msn.PassportNexus`: Used to obtain the URL of a valid passport login HTTPS server.
        - `twisted.web.proxy.ProxyClient`: Used by ProxyClientFactory to implement a simple web proxy.
        - `twisted.web.xmlrpc.QueryProtocol`
        - `twisted.protocols.shoutcast.ShoutcastClient`: Shoutcast HTTP stream.
      - `twisted.protocols.imap4.IMAP4Client`: IMAP4 client protocol implementation
      - `twisted.protocols.imap4.IMAP4Server`: Protocol implementation for an IMAP4rev1 server.
      - `twisted.protocols.irc.IRCClient`: Internet Relay Chat client protocol, with sprinkles.
        - `twisted.im.ircsupport.IRCProto`
        - `twisted.words.tendril.TendrilIRC`: I connect to the IRC server and broker traffic.
      - `twisted.runner.procmon.LineLogger`
      - `twisted.protocols.sip.MessagesParser`: A SIP messages parser.
      - `twisted.protocols.msn.MSNEventBase`: This class provides support for handling / dispatching events and is the base class of the three main client protocols (DispatchClient, NotificationClient, SwitchboardClient)
        - `twisted.protocols.msn.DispatchClient`: This class provides support for clients connecting to the dispatch server
        - `twisted.protocols.msn.NotificationClient`: This class provides support for clients connecting to the notification server.
        - `twisted.protocols.msn.SwitchboardClient`: This class provides support for clients connecting to a switchboard server.
      - `twisted.protocols.gps.nmea.NMEAReceiver`: This parses most common NMEA-0183 messages, presumably from a serial GPS device at 4800 bps
      - `twisted.protocols.nntp.NNTPClient`
        - `twisted.protocols.nntp.UsenetClientProtocol`: A client that connects to an NNTP server and asks for articles new since a certain time.
      - `twisted.protocols.nntp.NNTPServer`
      - `twisted.protocols.postfix.PostfixTCPMapServer`: Postfix mail transport agent TCP map protocol implementation.
      - `twisted.protocols.smtp.SMTP`: SMTP server-side protocol.
        - `twisted.mail.protocols.DomainSMTP`
        - `twisted.protocols.smtp.ESMTP`
          - `twisted.mail.protocols.DomainESMTP`
      - `twisted.protocols.smtp.SMTPClient`: SMTP client for sending emails.
        - `twisted.protocols.smtp.ESMTPClient`
          - `twisted.mail.relay.ESMTPRelayer`
            - `twisted.mail.relaymanager.ESMTPManagedRelayer`
        - `twisted.mail.relay.SMTPRelayer`
          - `twisted.mail.relaymanager.SMTPManagedRelayer`
        - `twisted.protocols.smtp.SMTPSender`: Utility class for sending emails easily - use with SMTPSenderFactory.
    - `twisted.protocols.mice.mouseman.MouseMan`: Parser for Logitech MouseMan serial mouse protocol (compatible with Microsoft Serial Mouse).
    - `twisted.protocols.basic.NetstringReceiver`: This uses djb's Netstrings protocol to break up the input into strings.
      - `twisted.protocols.basic.SafeNetstringReceiver`: This class is deprecated, use NetstringReceiver instead.
    - `twisted.protocols.oscar.OscarConnection`
      - `twisted.protocols.oscar.OscarAuthenticator`
      - `twisted.protocols.oscar.SNACBased`
        - `twisted.protocols.oscar.BOSConnection`
        - `twisted.protocols.oscar.OSCARService`
          - `twisted.protocols.oscar.ChatNavService`
          - `twisted.protocols.oscar.ChatService`
    - `twisted.protocols.ftp.ProtocolWrapper`
    - `twisted.protocols.policies.ProtocolWrapper`: Wraps protocol instances and acts as their transport as well.
      - `twisted.protocols.policies.SpewingProtocol`
      - `twisted.protocols.policies.ThrottlingProtocol`: Protocol for ThrottlingFactory.
      - `twisted.protocols.policies.TimeoutProtocol`: Protocol that automatically disconnects when the connection is idle.
    - `twisted.protocols.portforward.Proxy`
      - `twisted.protocols.portforward.ProxyClient`
      - `twisted.protocols.portforward.ProxyServer`
    - `twisted.spread.banana.Pynana`
      - `twisted.spread.banana.Canana`
        - `twisted.spread.pb.Broker`: I am a broker for objects.
          - `twisted.mail.pb.MaildirBroker`
          - `twisted.mail.pb.MaildirClient`
        - `twisted.trial.remote.DecodeReport`
          - `twisted.trial.remote.TrialProcessProtocol`
        - `twisted.trial.remote.OneWayBanana`
        - `twisted.conch.client.unix.SSHUnixProtocol`
          - `twisted.conch.client.unix.SSHUnixClientProtocol`
          - `twisted.conch.client.unix.SSHUnixServerProtocol`
    - `twisted.protocols.wire.QOTD`: Return a quote of the day (RFC 865)
    - `twisted.protocols.ftp.SenderProtocol`
    - `twisted.protocols.toc.SendFileTransfer`
    - `twisted.protocols.socks.SOCKSv4`
    - `twisted.protocols.socks.SOCKSv4Incoming`
    - `twisted.protocols.socks.SOCKSv4Outgoing`
    - `twisted.conch.ssh.forwarding.SSHForwardingClient`
    - `twisted.conch.ssh.session.SSHSessionClient`
    - `twisted.protocols.stateful.StatefulProtocol`: A Protocol that stores state for you.
    - `twisted.protocols.telnet.Telnet`: I am a Protocol for handling Telnet connections.
      - `twisted.manhole.telnet.Shell`: A Python command-line shell.
    - `twisted.protocols.wire.Time`: Send back the time in machine readable form (RFC 868)
    - `twisted.protocols.toc.TOC`
    - `twisted.protocols.toc.TOCClient`
      - `twisted.im.tocsupport.TOCProto`
    - `twisted.protocols.wire.Who`: Return list of active users (RFC 866)
    - `twisted.protocols.sux.XMLParser`
      - `twisted.web.microdom.MicroDOMParser`
      - `twisted.xish.domish.SuxElementStream`
    - `twisted.protocols.xmlstream.XmlStream`
    - `twisted.protocols.gps.rockwell.Zodiac`
- `twisted.internet.protocol.ClientCreator`: Useful for cases when we don't really need a factory.
- `twisted.internet.protocol.Factory`: This is a factory which produces protocols.
  - `twisted.spread.pb.BrokerFactory`: DEPRECATED, use PBServerFactory instead.
  - `twisted.internet.protocol.ClientFactory`: A Protocol factory for clients.
    - `twisted.internet.protocol._InstanceFactory`: Factory used by ClientCreator.
    - `twisted.internet.base.BCFactory`: Factory for backwards compatability with old clientXXX APIs.
    - `twisted.spread.pb.BrokerClientFactory`
    - `twisted.protocols.irc.DccChatFactory`
    - `twisted.protocols.dict.DictLookupFactory`: Utility factory for a single dict transaction
    - `twisted.web.google.GoogleCheckerFactory`
    - `twisted.web.client.HTTPClientFactory`: Download a given URL.
      - `twisted.web.client.HTTPDownloader`: Download to a file.
    - `twisted.protocols.loopback.LoopbackClientFactory`
    - `twisted.protocols.msn.NotificationFactory`: Factory for the NotificationClient protocol.
    - `twisted.spread.pb.PBClientFactory`: Client factory for PB brokers.
    - `twisted.protocols.portforward.ProxyClientFactory`
    - `twisted.web.proxy.ProxyClientFactory`: Used by ProxyRequest to implement a simple web proxy.
    - `twisted.web.xmlrpc.QueryFactory`
    - `twisted.internet.protocol.ReconnectingClientFactory`: My clients auto-reconnect with an exponential back-off.
      - `twisted.words.tendril.TendrilFactory`: I build Tendril clients for a words service.
      - `twisted.protocols.xmlstream.XmlStreamFactory`
    - `twisted.mail.relaymanager.SMTPManagedRelayerFactory`
      - `twisted.mail.relaymanager.ESMTPManagedRelayerFactory`
    - `twisted.protocols.smtp.SMTPSenderFactory`: Utility factory for sending emails easily.
    - `twisted.conch.client.direct.SSHClientFactory`
    - `twisted.conch.client.unix.SSHUnixClientFactory`
    - `twisted.news.news.UsenetClientFactory`
    - `twisted.protocols.policies.WrappingFactory`: Wraps a factory and its protocols, and keeps track of them.
      - `twisted.protocols.policies.LimitConnectionsByPeer`: Stability: Unstable
      - `twisted.protocols.policies.SpewingFactory`
      - `twisted.protocols.policies.ThrottlingFactory`: Throttles bandwidth and number of connections.
      - `twisted.protocols.policies.TimeoutFactory`: Factory for TimeoutWrapper.
  - `twisted.protocols.irc.DccSendFactory`
  - `twisted.protocols.ftp.DTPFactory`
  - `twisted.web.woven.flashconduit.FlashConduitFactory`
  - `twisted.protocols.ftp.FTPFactory`: A factory for producing ftp protocol instances
  - `twisted.words.ircservice.IRCGateway`
  - `twisted.im.proxyui.IRCUIFactory`
  - `twisted.protocols.portforward.ProxyFactory`: Factory for port forwarder.
  - `twisted.internet.protocol.ServerFactory`: Subclass this to indicate that your protocol.Factory is only usable for servers.
    - `twisted.names.server.DNSServerFactory`
    - `twisted.protocols.ftp.FTPDataPortFactory`: Factory for data connections that use the PORT command
    - `twisted.protocols.http.HTTPFactory`: Factory for HTTP server.
      - `twisted.web.server.Site`
    - `twisted.runner.inetd.InetdFactory`
    - `twisted.news.news.NNTPFactory`: A factory for NNTP server protocols.
      - `twisted.news.news.UsenetServerFactory`: A factory for NNTP Usenet server protocols.
    - `twisted.spread.pb.PBServerFactory`: Server factory for perspective broker.
    - `twisted.mail.protocols.POP3Factory`: POP3 protocol factory.
    - `twisted.protocols.postfix.PostfixTCPMapDeferringDictServerFactory`: An in-memory dictionary factory for PostfixTCPMapServer.
    - `twisted.protocols.postfix.PostfixTCPMapDictServerFactory`: An in-memory dictionary factory for PostfixTCPMapServer.
    - `twisted.protocols.smtp.SMTPFactory`: Factory for SMTP.
      - `twisted.mail.protocols.SMTPFactory`: A protocol factory for SMTP.
        - `twisted.mail.protocols.ESMTPFactory`
  - `twisted.manhole.telnet.ShellFactory`
  - `twisted.protocols.socks.SOCKSv4Factory`: A factory for a SOCKSv4 proxy.
  - `twisted.protocols.socks.SOCKSv4IncomingFactory`: A utility class for building protocols for incoming connections.
  - `twisted.conch.ssh.factory.SSHFactory`
    - `twisted.conch.openssh_compat.factory.OpenSSHFactory`
  - `twisted.conch.ssh.forwarding.SSHListenForwardingFactory`
  - `twisted.conch.client.unix.SSHUnixServerFactory`
  - `twisted.protocols.toc.TOCFactory`
- `twisted.internet.protocol.FileWrapper`: A wrapper around a file-like object to make it behave as a Transport.
- `twisted.internet.serialport.serialport.BaseSerialPort`
  - `twisted.internet.serialport.posixserialport.SerialPort`: A select()able serial device, acting as a transport.
  - `twisted.internet.serialport.win32serialport.SerialPort`: A select()able serial device, acting as a transport.
- `twisted.internet.ssl.ClientContextFactory`: A context factory for SSL clients.
- `twisted.internet.ssl.ContextFactory`: A factory for SSL context objects, for server SSL connections.
  - `twisted.internet.ssl.DefaultOpenSSLContextFactory`
- `twisted.internet.task.LoopingCall`: Call a function repeatedly.
- `twisted.internet.tcp._TLSMixin`
- `twisted.internet.udp.MulticastMixin`: Implement multicast functionality.
  - `twisted.internet.udp.ConnectedMulticastPort`: DEPRECATED.
  - `twisted.internet.udp.MulticastPort`: UDP Port that supports multicasting.
- `twisted.internet.utils.SRVConnector`: A connector that looks up DNS SRV records.
- `twisted.internet.utils._SRVConnector_ClientFactoryWrapper`
- `twisted.internet.wxsupport.wxRunner`: Make sure GUI events are handled.
- `twisted.lore.default.ProcessingFunctionFactory`
  - `twisted.lore.lmath.ProcessingFunctionFactory`
  - `twisted.lore.slides.SlidesProcessingFunctionFactory`
- `twisted.lore.htmlbook.Book`
- `twisted.lore.latex.BaseLatexSpitter`
  - `twisted.lore.docbook.DocbookSpitter`
  - `twisted.lore.latex.HeadingLatexSpitter`
  - `twisted.lore.latex.LatexSpitter`
    - `twisted.lore.latex.BookLatexSpitter`
    - `twisted.lore.latex.FootnoteLatexSpitter`: For multi-paragraph footnotes, this avoids having an empty leading paragraph.
    - `twisted.lore.lmath.MathLatexSpitter`
    - `twisted.lore.slides.PagebreakLatex`
      - `twisted.lore.slides.TwoPagebreakLatex`
    - `twisted.lore.slides.ProsperSlides`
    - `twisted.lore.latex.SectionLatexSpitter`
      - `twisted.lore.latex.ChapterLatexSpitter`
  - `twisted.lore.slides.MagicpointOutput`
  - `twisted.lore.texi.TexiSpitter`
- `twisted.lore.lint.TagChecker`
  - `twisted.lore.lint.DefaultTagChecker`
- `twisted.lore.man2lore.ManConverter`
- `twisted.lore.man2lore.ProcessingFunctionFactory`
- `twisted.lore.nevowlore.NevowProcessorFactory`
- `twisted.lore.process.NoProcessorError`
- `twisted.lore.process.ProcessingFailure`
- `twisted.lore.process.Walker`
  - `twisted.lore.process.NullReportingWalker`
  - `twisted.lore.process.PlainReportingWalker`
- `twisted.lore.slides.HTMLSlide`
- `twisted.mail.alias.AliasBase`
  - `twisted.mail.alias.AddressAlias`: The simplest alias, translating one email address into another.
  - `twisted.mail.alias.AliasGroup`: An alias which points to more than one recipient
  - `twisted.mail.alias.FileAlias`
  - `twisted.mail.alias.ProcessAlias`: An alias for a program.
- `twisted.mail.alias.FileWrapper`
- `twisted.mail.alias.MessageWrapper`
- `twisted.mail.alias.MultiWrapper`: Wrapper to deliver a single message to multiple recipients
- `twisted.mail.mail.BounceDomain`: A domain in which no user exists.
- `twisted.mail.mail.DomainWithDefaultDict`: Simulate a dictionary with a default value for non-existing keys.
- `twisted.mail.mail.FileMessage`: A file we can write an email too.
  - `twisted.mail.maildir.MaildirMessage`
- `twisted.mail.maildir.AbstractMaildirDomain`: Abstract maildir-backed domain.
  - `twisted.mail.maildir.MaildirDirdbmDomain`: A Maildir Domain where membership is checked by a dirdbm file
- `twisted.mail.maildir.DirdbmDatabase`
- `twisted.mail.maildir.StringListMailbox`
- `twisted.mail.maildir._MaildirNameGenerator`: Utility class to generate a unique maildir name
- `twisted.mail.protocols.DomainDeliveryBase`: A server that uses twisted.mail service's domains.
  - `twisted.mail.protocols.ESMTPDomainDelivery`
    - `twisted.mail.protocols.DomainESMTP`
  - `twisted.mail.protocols.SMTPDomainDelivery`
    - `twisted.mail.protocols.DomainSMTP`
- `twisted.mail.protocols.SSLContextFactory`: An SSL Context Factory
- `twisted.mail.relay.DomainQueuer`: An SMTP domain which add messages to a queue intended for relaying.
- `twisted.mail.relay.RelayerMixin`
  - `twisted.mail.relay.ESMTPRelayer`
    - `twisted.mail.relaymanager.ESMTPManagedRelayer`
  - `twisted.mail.relay.SMTPRelayer`
    - `twisted.mail.relaymanager.SMTPManagedRelayer`
- `twisted.mail.relaymanager.MXCalculator`
- `twisted.mail.relaymanager.ManagedRelayerMixin`: SMTP Relayer which notifies a manager
  - `twisted.mail.relaymanager.ESMTPManagedRelayer`
  - `twisted.mail.relaymanager.SMTPManagedRelayer`
- `twisted.mail.relaymanager.Queue`: A queue of ougoing emails.
- `twisted.mail.relaymanager.SmartHostSMTPRelayingManager`: Manage SMTP Relayers
  - `twisted.mail.relaymanager.SmartHostESMTPRelayingManager`
- `twisted.mail.tap.AliasUpdater`
- `twisted.manhole.explorer.CRUFT_WatchyThingie`
- `twisted.manhole.explorer.Pool`
- `twisted.manhole.explorer._MonkeysSetattrMixin`: A mix-in class providing __setattr__ for objects being watched.
- `twisted.manhole.explorer._WatchMonkey`: I hang on a method and tell you what I see.
- `twisted.manhole.service.FakeStdIO`
- `twisted.manhole.service.Realm`
- `twisted.manhole.ui.gtk2manhole.ConsoleInput`
  - `twisted.manhole._inspectro.ConsoleInput`
- `twisted.manhole.ui.gtk2manhole.ConsoleOutput`
  - `twisted.manhole._inspectro.ConsoleOutput`
- `twisted.manhole.ui.gtk2manhole.OfflineError`
- `twisted.manhole.ui.gtk2manhole._Notafile`: Curry to make failure.printTraceback work with the output widget.
- `twisted.manhole.ui.spelunk_gnome.PairList`: An ordered list of key, value pairs.
- `twisted.manhole.ui.spelunk_gnome.SillyModule`
- `twisted.names.common.ResolverBase`
  - `twisted.names.cache.CacheResolver`: A resolver that serves records from a local, memory cache.
  - `twisted.names.authority.FileAuthority`: An Authority that is loaded from a file.
    - `twisted.names.authority.BindAuthority`: An Authority that loads BIND configuration files
    - `twisted.names.authority.PySourceAuthority`: A FileAuthority that is built up from Python source code.
  - `twisted.names.hosts.Resolver`: A resolver that services hosts(5) format files.
  - `twisted.names.root.Resolver`
  - `twisted.names.resolve.ResolverChain`: Lookup an address using multiple `IResolver`s
  - `twisted.names.secondary.SecondaryAuthority`: An Authority that keeps itself updated by performing zone transfers
- `twisted.names.resolve.FailureHandler`
- `twisted.names.root.DeferredResolver`
- `twisted.names.root._DummyController`
- `twisted.news.database.Article`
- `twisted.news.database.Group`
- `twisted.news.database.NewsServerError`
- `twisted.news.database.NewsShelf`: A NewStorage implementation using Twisted's dirdbm persistence module.
- `twisted.news.database.NewsStorage`: Backwards compatibility class -- There is no reason to inherit from this, just implement INewsStorage instead.
- `twisted.news.database.PickleStorage`: A trivial NewsStorage implementation using pickles
- `twisted.persisted.aot.AOTJellier`
- `twisted.persisted.aot.AOTUnjellier`: I handle the unjellying of an Abstract Object Tree.
- `twisted.persisted.aot.Copyreg`
- `twisted.persisted.aot.Deref`
- `twisted.persisted.aot.Instance`
- `twisted.persisted.aot.InstanceMethod`
- `twisted.persisted.aot.Named`
  - `twisted.persisted.aot.Class`
  - `twisted.persisted.aot.Function`
  - `twisted.persisted.aot.Module`
- `twisted.persisted.aot.NonFormattableDict`: A dictionary was not formattable.
- `twisted.persisted.aot.Ref`
- `twisted.persisted.aot._NoStateObj`
- `twisted.persisted.crefutil.NotKnown`
  - `twisted.persisted.crefutil._Defer`
  - `twisted.persisted.crefutil._Dereference`
  - `twisted.persisted.crefutil._InstanceMethod`
  - `twisted.persisted.crefutil._Tuple`
- `twisted.persisted.crefutil._Catcher`
- `twisted.persisted.crefutil._DictKeyAndValue`
- `twisted.persisted.dirdbm.DirDBM`: A directory with a DBM interface.
  - `twisted.persisted.dirdbm.Shelf`: A directory with a DBM shelf interface.
- `twisted.persisted.journal.base.Journal`: All commands to the system get routed through here.
  - `twisted.persisted.journal.base.MemoryJournal`: Prevayler-like journal that dumps from memory to disk.
  - `twisted.persisted.journal.rowjournal.RowJournal`: Journal that stores data 'snapshot' in using twisted.enterprise.row.
- `twisted.persisted.journal.base.LoadingService`: Base class for journalled service used with Wrappables.
- `twisted.persisted.journal.base.ServiceWrapperCommand`
- `twisted.persisted.journal.base.Wrappable`: Base class for objects used with LoadingService.
- `twisted.persisted.journal.base.WrapperCommand`
- `twisted.persisted.journal.picklelog.DirDBMLog`: Log pickles to DirDBM directory.
- `twisted.persisted.marmalade.DOMJellier`
- `twisted.persisted.marmalade.DOMJellyable`
- `twisted.persisted.marmalade.DOMUnjellier`
- `twisted.persisted.sob.Persistent`
- `twisted.persisted.styles.Ephemeral`: This type of object is never persisted; if possible, even references to it are eliminated.
  - `twisted.persisted.sob._EverythingEphemeral`
  - `twisted.internet.default._UnixWaker`: This class provides a simple interface to wake up the select() loop.
  - `twisted.internet.default._Win32Waker`: I am a workaround for the lack of pipes on win32.
  - `twisted.internet.base.BaseConnector`: Basic implementation of connector.
    - `twisted.internet.ssl.Connector`
    - `twisted.internet.tcp.Connector`
    - `twisted.internet.unix.Connector`
  - `twisted.protocols.irc.DccChat`: Direct Client Connection protocol type CHAT.
  - `twisted.protocols.irc.DccFileReceiveBasic`: Bare protocol to receive a Direct Client Connection SEND stream.
    - `twisted.protocols.irc.DccFileReceive`: Higher-level coverage for getting a file from DCC SEND.
  - `twisted.protocols.irc.DccSendProtocol`: Protocol for an outgoing Direct Client Connection SEND.
  - `twisted.internet.base.DelayedCall`
  - `twisted.internet.abstract.FileDescriptor`: An object which can be operated on by select().
    - `twisted.internet.base.BasePort`: Basic implementation of a ListeningPort.
      - `twisted.internet.tcp.Port`: I am a TCP server port, listening for connections.
        - `twisted.internet.ssl.Port`: I am an SSL port.
        - `twisted.internet.unix.Port`
      - `twisted.internet.udp.Port`: UDP port, listening for packets.
        - `twisted.internet.udp.ConnectedPort`: DEPRECATED.
          - `twisted.internet.udp.ConnectedMulticastPort`: DEPRECATED.
        - `twisted.internet.unix.DatagramPort`: Datagram UNIX port, listening for packets.
          - `twisted.internet.unix.ConnectedDatagramPort`: A connected datagram UNIX socket.
        - `twisted.internet.udp.MulticastPort`: UDP Port that supports multicasting.
    - `twisted.internet.tcp.Connection`: I am the superclass of all socket-based FileDescriptors.
      - `twisted.internet.tcp.BaseClient`: A base class for client TCP (and similiar) sockets.
        - `twisted.internet.tcp.Client`: A TCP client.
          - `twisted.internet.ssl.Client`: I am an SSL client.
        - `twisted.internet.unix.Client`: A client for Unix sockets.
      - `twisted.internet.tcp.Server`: Serverside socket-stream connection class.
        - `twisted.internet.ssl.Server`: I am an SSL server.
        - `twisted.internet.unix.Server`
    - `twisted.internet.win32eventreactor.Process`: A process that integrates with the Twisted event loop.
    - `twisted.internet.process.ProcessReader`: ProcessReader
    - `twisted.internet.process.ProcessWriter`: (Internal) Helper class to write into a Process's input pipe.
    - `twisted.internet.process.PTYProcess`: An operating-system Process that uses PTY support.
    - `twisted.internet.serialport.posixserialport.SerialPort`: A select()able serial device, acting as a transport.
    - `twisted.internet.serialport.win32serialport.SerialPort`: A select()able serial device, acting as a transport.
    - `twisted.internet.stdio.StandardIO`: I can connect Standard IO to a twisted.protocol I act as a selectable for sys.stdin, and provide a write method that writes to stdout.
    - `twisted.internet.stdio.StandardIOWriter`
  - `twisted.internet.process.Process`: An operating-system Process.
  - `twisted.words.tendril.ProxiedParticipant`: I'm the client of a participant who is connected through Tendril.
  - `twisted.internet.process.PTYProcess`: An operating-system Process that uses PTY support.
  - `twisted.spread.banana.Pynana`
    - `twisted.spread.banana.Canana`
      - `twisted.spread.pb.Broker`: I am a broker for objects.
        - `twisted.mail.pb.MaildirBroker`
        - `twisted.mail.pb.MaildirClient`
      - `twisted.trial.remote.DecodeReport`
        - `twisted.trial.remote.TrialProcessProtocol`
      - `twisted.trial.remote.OneWayBanana`
      - `twisted.conch.client.unix.SSHUnixProtocol`
        - `twisted.conch.client.unix.SSHUnixClientProtocol`
        - `twisted.conch.client.unix.SSHUnixServerProtocol`
  - `twisted.spread.pb.RemoteReference`: This is a translucent reference to a remote object.
  - `twisted.words.tendril.TendrilIRC`: I connect to the IRC server and broker traffic.
- `twisted.persisted.styles.Versioned`: This type of object is persisted with versioning information.
  - `twisted.im.basesupport.AbstractAccount`: Base class for Accounts.
    - `twisted.im.ircsupport.IRCAccount`
    - `twisted.im.pbsupport.PBAccount`
    - `twisted.im.tocsupport.TOCAccount`
  - `twisted.words.webwords.AccountCreationWidget`
  - `twisted.internet.app.Application`: I am the `root object' in a Twisted process.
  - `twisted.internet.app.ApplicationService`: I am a service you can add to an application.
    - `twisted.internet.app.MultiService`: I am a collection of multiple services.
      - `twisted.internet.app.DependentMultiService`: I am a MultiService that starts services in insert order, and stops them in the reverse order.
    - `twisted.cred.service.Service`: I am a service that internet applications interact with.
      - `twisted.spread.pb.Service`: A service for Perspective Broker.
        - `twisted.words.service.Service`: I am a chat service.
  - `twisted.spread.pb.BrokerFactory`: DEPRECATED, use PBServerFactory instead.
  - `twisted.python.components.Componentized`: I am a mixin to allow you to be adapted in various ways persistently.
    - `twisted.web.woven.guard.GuardSession`: A user's session with a system.
    - `twisted.manhole.ui.gtk2manhole.ManholeWindow`
    - `twisted.web.static.Registry`: I am a Componentized object that will be made available to internal Twisted file-based dynamic web content such as .rpy and .epy scripts.
    - `twisted.python.components.ReprableComponentized`
    - `twisted.web.server.Request`
      - `twisted.web.distrib.Request`
    - `twisted.web.server.Session`: A user's session with a system.
  - `twisted.web.static.File`: File is a resource that represents a plain non-interpreted file (although it can look for an extension like .rpy or .cgi and hand the file to a processor for interpretation if you wish).
  - `twisted.words.service.Group`: This class represents a group of people engaged in a chat session with one another.
  - `twisted.words.service.Participant`
  - `twisted.words.webwords.ParticipantListWidget`
  - `twisted.web.static.Registry`: I am a Componentized object that will be made available to internal Twisted file-based dynamic web content such as .rpy and .epy scripts.
  - `twisted.names.hosts.Resolver`: A resolver that services hosts(5) format files.
  - `twisted.web.distrib.ResourcePublisher`
  - `twisted.words.service.Service`: I am a chat service.
  - `twisted.words.webwords.WebWordsAdminSite`
  - `twisted.words.webwords.WordsGadget`
- `twisted.protocols.basic.FileSender`: A producer that sends the contents of a file to a consumer.
  - `twisted.protocols.ftp.DTPFileSender`
- `twisted.protocols.basic.NetstringParseError`: The incoming data is not in valid Netstring format.
- `twisted.protocols.basic.StatefulStringProtocol`: A stateful string protocol.
- `twisted.protocols.dict.Definition`: A word definition
- `twisted.protocols.dict.InvalidResponse`
- `twisted.protocols.ethernet.EthernetHeader`
- `twisted.protocols.ftp.AnonUserDeniedError`: raised when an anonymous user issues a command that will alter the filesystem
- `twisted.protocols.ftp.AuthorizationError`: raised when client authentication fails
- `twisted.protocols.ftp.BadCmdSequenceError`: raised when a client sends a series of commands in an illogical sequence
- `twisted.protocols.ftp.BogusClientError`: thrown when a client other than the one we opened this DTP connection for attempts to connect, or a client attempts to get us to connect to an ip that differs from the one where the request came from
- `twisted.protocols.ftp.ClientDisconnectError`
- `twisted.protocols.ftp.CmdArgSyntaxError`
- `twisted.protocols.ftp.CmdNotImplementedError`: raised when an unimplemented command is given to the server
- `twisted.protocols.ftp.CmdNotImplementedForArgError`
- `twisted.protocols.ftp.CmdSyntaxError`
- `twisted.protocols.ftp.DTPError`
- `twisted.protocols.ftp.FTPAnonymousShell`: Only works on POSIX platforms at the moment.
- `twisted.protocols.ftp.FTPCommand`
- `twisted.protocols.ftp.FTPError`
  - `twisted.protocols.ftp.BadResponse`
  - `twisted.protocols.ftp.CommandFailed`
  - `twisted.protocols.ftp.ConnectionLost`
  - `twisted.protocols.ftp.UnexpectedResponse`
- `twisted.protocols.ftp.FTPRealm`
- `twisted.protocols.ftp.FTPTimeoutError`
- `twisted.protocols.ftp.FileNotFoundError`
- `twisted.protocols.ftp.IDTPFactory`: An interface for protocol.Factories
- `twisted.protocols.ftp.IDTPParent`: An interface for protocols that wish to use a DTP sub-protocol and factory.
- `twisted.protocols.ftp.IsNotADirectoryError`: raised when RMD is called on a path that isn't a directory
- `twisted.protocols.ftp.OperationFailedError`: raised when a command like rmd or mkdir fails for a reason other than permissions errors
- `twisted.protocols.ftp.PathBelowTLDError`
- `twisted.protocols.ftp.PermissionDeniedError`
- `twisted.protocols.ftp.TLDNotSetInRealmError`: raised if the tld (root) directory for the FTPRealm was not set before requestAvatar was called
- `twisted.protocols.gps.nmea.InvalidChecksum`
- `twisted.protocols.gps.nmea.InvalidSentence`
- `twisted.protocols.gps.rockwell.ZodiacParseError`
- `twisted.protocols.htb.Bucket`: Token bucket, or something like it.
- `twisted.protocols.htb.HierarchicalBucketFilter`: I filter things into buckets, and I am nestable.
  - `twisted.protocols.htb.FilterByHost`: A bucket filter with a bucket for each host.
  - `twisted.protocols.htb.FilterByServer`: A bucket filter with a bucket for each service.
- `twisted.protocols.htb.ShapedProtocolFactory`: I dispense Protocols with traffic shaping on their transports.
- `twisted.protocols.http.Request`: A HTTP request.
  - `twisted.web.proxy.ProxyRequest`: Used by Proxy to implement a simple web proxy.
  - `twisted.web.server.Request`
    - `twisted.web.distrib.Request`
  - `twisted.web.proxy.ReverseProxyRequest`: Used by ReverseProxy to implement a simple reverse proxy.
- `twisted.protocols.http.StringTransport`: I am a StringIO wrapper that conforms for the transport API.
- `twisted.protocols.ident.IdentError`: Can't determine connection owner; reason unknown.
  - `twisted.protocols.ident.HiddenUser`: The server was able to identify the user of this port, but the information was not returned at the request of the user.
  - `twisted.protocols.ident.InvalidPort`: Either the local or foreign port was improperly specified.
  - `twisted.protocols.ident.NoUser`: The connection specified by the port pair is not currently in use or currently not owned by an identifiable entity.
- `twisted.protocols.imap4.Body`
- `twisted.protocols.imap4.BodyStructure`
- `twisted.protocols.imap4.Command`
- `twisted.protocols.imap4.CramMD5ClientAuthenticator`
- `twisted.protocols.imap4.DontQuoteMe`
- `twisted.protocols.imap4.Envelope`
- `twisted.protocols.imap4.FileProducer`
- `twisted.protocols.imap4.Flags`
- `twisted.protocols.imap4.Header`
- `twisted.protocols.imap4.IMAP4Exception`
  - `twisted.protocols.imap4.IllegalClientResponse`
  - `twisted.protocols.imap4.IllegalIdentifierError`
  - `twisted.protocols.imap4.IllegalMailboxEncoding`
  - `twisted.protocols.imap4.IllegalOperation`
  - `twisted.protocols.imap4.IllegalQueryError`
  - `twisted.protocols.imap4.IllegalServerResponse`
  - `twisted.protocols.imap4.MailboxException`
    - `twisted.protocols.imap4.MailboxCollision`
    - `twisted.protocols.imap4.NoSuchMailbox`
    - `twisted.protocols.imap4.ReadOnlyMailbox`
  - `twisted.protocols.imap4.MismatchedNesting`
  - `twisted.protocols.imap4.MismatchedQuoting`
  - `twisted.protocols.imap4.NegativeResponse`
  - `twisted.protocols.imap4.NoSupportedAuthentication`
  - `twisted.protocols.imap4.UnhandledResponse`
- `twisted.protocols.imap4.InternalDate`
- `twisted.protocols.imap4.LOGINAuthenticator`
- `twisted.protocols.imap4.LiteralFile`
- `twisted.protocols.imap4.LiteralString`
- `twisted.protocols.imap4.MIME`
- `twisted.protocols.imap4.MessageProducer`
- `twisted.protocols.imap4.MessageSet`: Essentially an infinite bitfield, with some extra features.
- `twisted.protocols.imap4.PLAINAuthenticator`
- `twisted.protocols.imap4.RFC822`
- `twisted.protocols.imap4.RFC822Header`
- `twisted.protocols.imap4.RFC822Size`
- `twisted.protocols.imap4.RFC822Text`
- `twisted.protocols.imap4.StreamReader`
- `twisted.protocols.imap4.StreamWriter`
- `twisted.protocols.imap4.Text`
- `twisted.protocols.imap4.UID`
- `twisted.protocols.imap4.WriteBuffer`: Buffer up a bunch of writes before sending them all to a transport at once.
- `twisted.protocols.imap4._FetchParser`
- `twisted.protocols.ip.IPHeader`
- `twisted.protocols.irc.IRCBadMessage`
- `twisted.protocols.irc.IRCPasswordMismatch`
- `twisted.protocols.jabber.jid.InvalidFormat`
- `twisted.protocols.jabber.jid.JID`
- `twisted.protocols.loopback.LoopbackRelay`
- `twisted.protocols.msn.MSNContact`: This class represents a contact (user).
- `twisted.protocols.msn.MSNContactList`: This class represents a basic MSN contact list.
- `twisted.protocols.msn.MSNMessage`: I am the class used to represent an 'instant' message.
- `twisted.protocols.msn.MSNProtocolError`: This Exception is basically used for debugging purposes, as the official MSN server should never send anything _wrong_ and nobody in their right mind would run their own MSN server.
- `twisted.protocols.nntp.NNTPError`
- `twisted.protocols.oscar.OSCARUser`
- `twisted.protocols.oscar.SSIBuddy`
- `twisted.protocols.oscar.SSIGroup`
- `twisted.protocols.pcp.BasicProducerConsumerProxy`: I can act as a man in the middle between any Producer and Consumer.
  - `twisted.protocols.pcp.ProducerConsumerProxy`: ProducerConsumerProxy with a finite buffer.
    - `twisted.protocols.htb.ShapedConsumer`: I wrap a Consumer and shape the rate at which it receives data.
      - `twisted.protocols.htb.ShapedTransport`: I wrap a Transport and shape the rate at which it receives data.
- `twisted.protocols.policies.TimeoutMixin`: Mixin for protocols which wish to timeout connections
  - `twisted.protocols.ftp.FTP`: Protocol Interpreter for the File Transfer Protocol
  - `twisted.protocols.http.HTTPChannel`: A receiver for HTTP requests.
    - `twisted.web.proxy.Proxy`: This class implements a simple web proxy.
    - `twisted.web.proxy.ReverseProxy`: Implements a simple reverse proxy.
  - `twisted.protocols.imap4.IMAP4Server`: Protocol implementation for an IMAP4rev1 server.
  - `twisted.protocols.pop3.POP3`
    - `twisted.mail.protocols.VirtualPOP3`: Virtual hosting POP3.
  - `twisted.protocols.postfix.PostfixTCPMapServer`: Postfix mail transport agent TCP map protocol implementation.
  - `twisted.protocols.smtp.SMTP`: SMTP server-side protocol.
    - `twisted.mail.protocols.DomainSMTP`
    - `twisted.protocols.smtp.ESMTP`
      - `twisted.mail.protocols.DomainESMTP`
- `twisted.protocols.pop3.APOPCredentials`
- `twisted.protocols.pop3.Mailbox`
  - `twisted.mail.maildir.MaildirMailbox`: Implement the POP3 mailbox semantics for a Maildir mailbox
- `twisted.protocols.pop3.POP3Error`
- `twisted.protocols.pop3._HeadersPlusNLines`
- `twisted.protocols.rawudp.UDPHeader`
- `twisted.protocols.sip.BasicAuthorizer`: Authorizer for insecure Basic (base64-encoded plaintext) authentication.
- `twisted.protocols.sip.DigestAuthorizer`
- `twisted.protocols.sip.InMemoryRegistry`: A simplistic registry for a specific domain.
- `twisted.protocols.sip.Message`: A SIP message.
  - `twisted.protocols.sip.Request`: A Request for a URI
  - `twisted.protocols.sip.Response`: A Response to a URI Request
- `twisted.protocols.sip.Registration`
- `twisted.protocols.sip.SIPError`
  - `twisted.protocols.sip.RegistrationError`: Registration was not possible.
- `twisted.protocols.sip.URL`: A SIP URL.
- `twisted.protocols.sip.Via`: A SIP Via header.
- `twisted.protocols.smtp.Address`: Parse and hold an RFC 2821 address.
- `twisted.protocols.smtp.SMTPError`
  - `twisted.protocols.smtp.AddressError`: Parse error in address
  - `twisted.protocols.smtp.SMTPClientError`
    - `twisted.protocols.smtp.SMTPConnectError`
    - `twisted.protocols.smtp.SMTPDeliveryError`
    - `twisted.protocols.smtp.SMTPProtocolError`
  - `twisted.protocols.smtp.SMTPServerError`
    - `twisted.protocols.smtp.SMTPAddressError`
      - `twisted.protocols.smtp.SMTPBadRcpt`
      - `twisted.protocols.smtp.SMTPBadSender`
- `twisted.protocols.smtp.User`: Hold information about and SMTP message recipient, including information on where the message came from
- `twisted.protocols.smtp.xtextStreamReader`
- `twisted.protocols.smtp.xtextStreamWriter`
- `twisted.protocols.sux.ParseError`
- `twisted.protocols.toc.Chatroom`
- `twisted.protocols.toc.SavedUser`
- `twisted.protocols.toc.TOCParseError`
- `twisted.protocols.xmlstream.Authenticator`: Base class for business logic of authenticating an XmlStream
  - `twisted.protocols.xmlstream.ConnectAuthenticator`
    - `twisted.protocols.jabber.client.BasicAuthenticator`: Authenticates an XmlStream against a Jabber server as a Client
    - `twisted.protocols.jabber.component.ConnectComponentAuthenticator`: Authenticator to permit an XmlStream to authenticate against a Jabber Server as a Component (where the Authenticator is initiating the stream).
  - `twisted.protocols.jabber.component.ListenComponentAuthenticator`: Placeholder for listening components
- `twisted.python.components.Adapter`: I am the default implementation of an Adapter for some interface.
  - `twisted.internet.protocol.ConsumerToProtocolAdapter`: This class is unstable.
  - `twisted.manhole._inspectro.InspectorNode`
    - `twisted.manhole._inspectro.AttributesNode`
    - `twisted.manhole._inspectro.ConstantNode`
    - `twisted.manhole._inspectro.DictionaryNode`
    - `twisted.manhole._inspectro.InstanceNode`
    - `twisted.manhole._inspectro.ListNode`
  - `twisted.manhole.ui.gtk2manhole.ManholeClient`
  - `twisted.internet.protocol.ProtocolToConsumerAdapter`: This class is unstable.
- `twisted.python.components.AdapterRegistry`
- `twisted.python.components.CannotAdapt`: Can't adapt some object to some Interface.
- `twisted.python.components.Interface`: Base class for interfaces.
  - `twisted.im.interfaces.IAccount`: I represent a user's account with a chat service.
  - `twisted.protocols.imap4.IAccount`: Interface for Account classes
  - `twisted.internet.interfaces.IAddress`: An address, e.g.
  - `twisted.mail.alias.IAlias`
  - `twisted.protocols.sip.IAuthorizer`
  - `twisted.protocols.htb.IBucketFilter`
  - `twisted.im.interfaces.IChatUI`
  - `twisted.im.interfaces.IClient`:
  - `twisted.protocols.imap4.IClientAuthentication`
  - `twisted.protocols.imap4.ICloseableMailbox`: A supplementary interface for mailboxes which require cleanup on close.
  - `twisted.persisted.journal.base.ICommand`: A serializable command which interacts with a journaled service.
  - `twisted.persisted.journal.base.ICommandLog`: Interface for command log.
  - `twisted.conch.interfaces.IConchUser`: A user who has been authenticated to Cred through Conch.
  - `twisted.internet.interfaces.IConnector`: Object used to interface between connections and protocols.
  - `twisted.internet.interfaces.IConsumer`: A consumer consumes data from a producer.
    - `twisted.internet.interfaces.IFinishableConsumer`: A Consumer for producers that finish.
  - `twisted.protocols.sip.IContact`: A user of a registrar or proxy
  - `twisted.web.woven.interfaces.IController`: A MVC Controller
  - `twisted.im.interfaces.IConversation`: A conversation with a specific person.
  - `twisted.cred.credentials.ICredentials`: I check credentials.
    - `twisted.cred.credentials.IAnonymous`: I am an explicitly anonymous request for access.
    - `twisted.conch.credentials.IPluggableAuthenticationModules`: I encapsulate the authentication of a user via PAM (Pluggable Authentication Modules.
    - `twisted.conch.credentials.ISSHPrivateKey`: I encapsulate an SSH public key to be checked against a users private key.
    - `twisted.cred.credentials.IUsernameHashedPassword`: I encapsulate a username and a hashed password.
    - `twisted.spread.pb.IUsernameMD5Password`: I encapsulate a username and a hashed password.
    - `twisted.cred.credentials.IUsernamePassword`: I encapsulate a username and a plaintext password.
  - `twisted.cred.checkers.ICredentialsChecker`: I check sub-interfaces of ICredentials.
  - `twisted.internet.interfaces.IDelayedCall`: A scheduled call.
  - `twisted.mail.mail.IDomain`: An email domain.
    - `twisted.mail.mail.IAliasableDomain`
  - `twisted.protocols.ethernet.IEthernetProtocol`: An interface for protocols that handle Ethernet frames
  - `twisted.internet.interfaces.IFileDescriptor`: A file descriptor.
    - `twisted.internet.interfaces.IReadDescriptor`
      - `twisted.internet.interfaces.IReadWriteDescriptor`: I am a `FileDescriptor` that can both read and write.
    - `twisted.internet.interfaces.IWriteDescriptor`
      - `twisted.internet.interfaces.IReadWriteDescriptor`: I am a `FileDescriptor` that can both read and write.
  - `twisted.protocols.ftp.IFTPShell`: An abstraction of the shell commands used by the FTP protocol for a given user account
  - `twisted.im.interfaces.IGroup`: A group which you may have a conversation with.
  - `twisted.im.interfaces.IGroupConversation`
  - `twisted.spread.interfaces.IJellyable`
  - `twisted.internet.interfaces.IListeningPort`: A listening port.
  - `twisted.protocols.sip.ILocator`: Allow looking up physical address for logical URL.
  - `twisted.protocols.pop3.IMailbox`:
  - `twisted.protocols.imap4.IMailboxInfo`: Interface specifying only the methods required for `listMailboxes`.
    - `twisted.protocols.imap4.IMailbox`
  - `twisted.protocols.imap4.IMailboxListener`: Interface for objects interested in mailbox events
  - `twisted.manhole.service.IManholeClient`
  - `twisted.protocols.smtp.IMessage`: Interface definition for messages that can be sent via SMTP.
  - `twisted.protocols.imap4.IMessageCopier`
  - `twisted.protocols.smtp.IMessageDelivery`
  - `twisted.protocols.smtp.IMessageDeliveryFactory`: An alternate interface to implement for handling message delivery.
  - `twisted.protocols.imap4.IMessageFile`
  - `twisted.protocols.imap4.IMessagePart`
    - `twisted.protocols.imap4.IMessage`
  - `twisted.web.woven.interfaces.IModel`: A MVC Model.
  - `twisted.internet.interfaces.IMulticastTransport`: Additional functionality for multicast UDP.
  - `twisted.protocols.imap4.INamespacePresenter`
  - `twisted.news.database.INewsStorage`: An interface for storing and requesting news articles
  - `twisted.manhole._inspectro.INode`: A node in the inspector tree model.
  - `twisted.web.woven.template.INodeMutator`: A component that implements NodeMutator knows how to mutate DOM based on the instructions in the object it wraps.
  - `twisted.application.compat.IOldApplication`: A subset of the interface old Application objects had implicitly
  - `twisted.spread.flavors.IPBRoot`: Factory for root Referenceable objects for PB servers.
  - `twisted.persisted.sob.IPersistable`: An object which can be saved in several formats to a file
  - `twisted.im.interfaces.IPerson`
  - `twisted.cred.perspective.IPerspective`
  - `twisted.spread.pb.IPerspective`: per*spec*tive, n.
  - `twisted.application.service.IProcess`: Process running parameters
  - `twisted.internet.interfaces.IProducer`: A producer produces data for a consumer.
    - `twisted.internet.interfaces.IPullProducer`: A pull producer, also known as a non-streaming producer, is expected to produce data each time resumeProducing() is called.
    - `twisted.internet.interfaces.IPushProducer`: A push producer, also known as a streaming producer is expected to produce (write to this consumer) data on a continous basis, unless it has been paused.
  - `twisted.internet.interfaces.IProtocol`
  - `twisted.internet.interfaces.IProtocolFactory`: Interface for protocol factories.
  - `twisted.protocols.raw.IRawDatagramProtocol`: An interface for protocols such as UDP, ICMP and TCP.
  - `twisted.protocols.raw.IRawPacketProtocol`: An interface for low-level protocols such as IP and ARP.
  - `twisted.internet.interfaces.IReactorArbitrary`
  - `twisted.internet.interfaces.IReactorCore`: Core methods that a Reactor must implement.
  - `twisted.internet.interfaces.IReactorFDSet`: Implement me to be able to use `FileDescriptor` type resources.
  - `twisted.internet.interfaces.IReactorMulticast`: UDP socket methods that support multicast.
  - `twisted.internet.interfaces.IReactorPluggableResolver`: A reactor with a pluggable name resolver interface.
  - `twisted.internet.interfaces.IReactorProcess`
  - `twisted.internet.interfaces.IReactorSSL`
  - `twisted.internet.interfaces.IReactorTCP`
  - `twisted.internet.interfaces.IReactorThreads`: Dispatch methods to be run in threads.
  - `twisted.internet.interfaces.IReactorTime`: Time methods that a Reactor should implement.
  - `twisted.internet.interfaces.IReactorUDP`: UDP socket methods.
  - `twisted.internet.interfaces.IReactorUNIX`: UNIX socket methods.
  - `twisted.internet.interfaces.IReactorUNIXDatagram`: datagram UNIX socket methods.
  - `twisted.cred.portal.IRealm`
  - `twisted.protocols.sip.IRegistry`: Allows registration of logical->physical URL mapping.
  - `twisted.trial.remote.IRemoteReporter`: I am reporting results from a test suite running someplace else.
  - `twisted.internet.interfaces.IResolverSimple`
    - `twisted.internet.interfaces.IResolver`
  - `twisted.web.resource.IResource`: A web resource.
  - `twisted.protocols.imap4.ISearchableMailbox`
  - `twisted.protocols.pop3.IServerFactory`: Interface for querying additional parameters of this POP3 server.
  - `twisted.application.service.IService`: A service.
  - `twisted.cred.service.IService`: An authorized service for internet applications.
  - `twisted.protocols.jabber.component.IService`
  - `twisted.application.service.IServiceCollection`: Collection of services.
  - `twisted.internet.interfaces.IServiceCollection`: An object which provides access to a collection of services.
  - `twisted.conch.interfaces.ISession`
  - `twisted.conch.interfaces.ISFTPServer`: The only attribute of this class is "avatar".
  - `twisted.internet.interfaces.ISystemHandle`: An object that wraps a networking OS-specific handle.
  - `twisted.trial.runner.ITestRunner`
  - `twisted.internet.interfaces.ITransport`: I am a transport for bytes.
    - `twisted.internet.interfaces.IProcessTransport`: A process transport.
    - `twisted.internet.interfaces.ITCPTransport`: A TCP based transport.
      - `twisted.internet.interfaces.ISSLTransport`: A SSL/TLS based transport.
      - `twisted.internet.interfaces.ITLSTransport`: A TCP transport that supports switching to TLS midstream.
  - `twisted.internet.interfaces.IUDPConnectedTransport`: DEPRECATED.
  - `twisted.internet.interfaces.IUDPTransport`: Transport for UDP DatagramProtocols.
  - `twisted.internet.interfaces.IUNIXDatagramConnectedTransport`: Transport for UDP ConnectedPacketProtocols.
  - `twisted.internet.interfaces.IUNIXDatagramTransport`: Transport for UDP PacketProtocols.
  - `twisted.spread.interfaces.IUnjellyable`
  - `twisted.web.woven.interfaces.IView`: A MVC View
  - `twisted.words.service.IWordsClient`: A client to a perspective on the twisted.words service.
  - `twisted.words.service.IWordsPolicy`
  - `twisted.web.woven.interfaces.IWovenLivePage`
- `twisted.python.components.MetaInterface`
- `twisted.python.components._NoImplementor`: Same as _Nothing but used by MetaInterface.__call__
- `twisted.python.components._Nothing`: An alternative to None - default value for functions which raise if default not passed.
- `twisted.python.components._Wrapper`: Makes any object be able to be dict key.
- `twisted.python.context.ContextTracker`
- `twisted.python.context.ThreadedContextTracker`
- `twisted.python.dispatch.EventDispatcher`: A global event dispatcher for events.
- `twisted.python.failure.DefaultException`
- `twisted.python.failure.Failure`: A basic abstraction for an error that has occurred.
  - `twisted.spread.pb.CopiedFailure`
  - `twisted.spread.pb.CopyableFailure`: A `flavors.RemoteCopy` and `flavors.Copyable` version of `twisted.python.failure.Failure` for serialization.
- `twisted.python.filepath.FilePath`: I am a path on the filesystem that only permits 'downwards' access.
  - `twisted.web.twcgi.CGIDirectory`
  - `twisted.web.static.File`: File is a resource that represents a plain non-interpreted file (although it can look for an extension like .rpy or .cgi and hand the file to a processor for interpretation if you wish).
- `twisted.python.filepath.InsecurePath`
- `twisted.python.formmethod.Argument`: Base class for form arguments.
  - `twisted.python.formmethod.Boolean`
  - `twisted.python.formmethod.Choice`: The result of a choice between enumerated types.
    - `twisted.python.formmethod.RadioGroup`
    - `twisted.python.formmethod.Submit`: Submit button or a reasonable facsimile thereof.
  - `twisted.python.formmethod.Date`: A date -- (year, month, day) tuple.
  - `twisted.python.formmethod.File`
  - `twisted.python.formmethod.Flags`: The result of a checkbox group or multi-menu.
    - `twisted.python.formmethod.CheckGroup`
  - `twisted.python.formmethod.Float`
  - `twisted.python.formmethod.Integer`: A single integer.
    - `twisted.python.formmethod.IntegerRange`
  - `twisted.python.formmethod.String`: A single string.
    - `twisted.python.formmethod.Hidden`: A string which is not displayed.
    - `twisted.python.formmethod.Password`: A string which should be obscured when input.
    - `twisted.python.formmethod.Text`: A long string.
    - `twisted.python.formmethod.VerifiedPassword`: A string that should be obscured when input and needs verification.
- `twisted.python.formmethod.FormException`: An error occurred calling the form method.
  - `twisted.python.formmethod.InputError`: An error occurred with some input.
- `twisted.python.formmethod.FormMethod`: A callable object with a signature.
- `twisted.python.formmethod.MethodSignature`
- `twisted.python.formmethod.PresentationHint`: A hint to a particular system.
- `twisted.python.hook.HookError`: An error which will fire when an invariant is violated.
- `twisted.python.htmlizer.HTMLWriter`
  - `twisted.python.htmlizer.SmallerHTMLWriter`: HTMLWriter that doesn't generate spans for some junk.
- `twisted.python.htmlizer.TokenPrinter`
- `twisted.python.lockfile.DidNotGetLock`
- `twisted.python.lockfile.LockFile`
- `twisted.python.log.DefaultObserver`: Default observer.
- `twisted.python.log.EscapeFromTheMeaninglessConfinesOfCapital`
- `twisted.python.log.FileLogObserver`: Log observer that writes to a file-like object.
- `twisted.python.log.ILogContext`: Actually, this interface is just a synoym for the dictionary interface, but it serves as a key for the default information in a log.
- `twisted.python.log.LogPublisher`: Class for singleton log message publishing.
- `twisted.python.log.Logger`: This represents a class which may 'own' a log.
  - `twisted.internet.default._UnixWaker`: This class provides a simple interface to wake up the select() loop.
  - `twisted.internet.default._Win32Waker`: I am a workaround for the lack of pipes on win32.
  - `twisted.internet.app.Application`: I am the `root object' in a Twisted process.
  - `twisted.internet.abstract.FileDescriptor`: An object which can be operated on by select().
    - `twisted.internet.base.BasePort`: Basic implementation of a ListeningPort.
      - `twisted.internet.tcp.Port`: I am a TCP server port, listening for connections.
        - `twisted.internet.ssl.Port`: I am an SSL port.
        - `twisted.internet.unix.Port`
      - `twisted.internet.udp.Port`: UDP port, listening for packets.
        - `twisted.internet.udp.ConnectedPort`: DEPRECATED.
          - `twisted.internet.udp.ConnectedMulticastPort`: DEPRECATED.
        - `twisted.internet.unix.DatagramPort`: Datagram UNIX port, listening for packets.
          - `twisted.internet.unix.ConnectedDatagramPort`: A connected datagram UNIX socket.
        - `twisted.internet.udp.MulticastPort`: UDP Port that supports multicasting.
    - `twisted.internet.tcp.Connection`: I am the superclass of all socket-based FileDescriptors.
      - `twisted.internet.tcp.BaseClient`: A base class for client TCP (and similiar) sockets.
        - `twisted.internet.tcp.Client`: A TCP client.
          - `twisted.internet.ssl.Client`: I am an SSL client.
        - `twisted.internet.unix.Client`: A client for Unix sockets.
      - `twisted.internet.tcp.Server`: Serverside socket-stream connection class.
        - `twisted.internet.ssl.Server`: I am an SSL server.
        - `twisted.internet.unix.Server`
    - `twisted.internet.win32eventreactor.Process`: A process that integrates with the Twisted event loop.
    - `twisted.internet.process.ProcessReader`: ProcessReader
    - `twisted.internet.process.ProcessWriter`: (Internal) Helper class to write into a Process's input pipe.
    - `twisted.internet.process.PTYProcess`: An operating-system Process that uses PTY support.
    - `twisted.internet.serialport.posixserialport.SerialPort`: A select()able serial device, acting as a transport.
    - `twisted.internet.serialport.win32serialport.SerialPort`: A select()able serial device, acting as a transport.
    - `twisted.internet.stdio.StandardIO`: I can connect Standard IO to a twisted.protocol I act as a selectable for sys.stdin, and provide a write method that writes to stdout.
    - `twisted.internet.stdio.StandardIOWriter`
- `twisted.python.log.NullFile`
- `twisted.python.log.StdioOnnaStick`: Class that pretends to be stout/err.
- `twisted.python.logfile.BaseLogFile`: The base class for a log file that can be rotated.
  - `twisted.python.logfile.DailyLogFile`: A log file that is rotated daily (at or after midnight localtime)
  - `twisted.python.logfile.LogFile`: A log file that can be rotated.
- `twisted.python.logfile.LogReader`: Read from a log file.
- `twisted.python.otp.OTPAuthenticator`: A One Time Password System
  - `twisted.python.otp.OTP`: An automatic version of the OTP-Authenticator
- `twisted.python.otp.Unauthorized`: the Unauthorized exception
- `twisted.python.plugin.DropIn`: I am a Python package containing plugins.tml.
- `twisted.python.plugin.PlugIn`: I am a Python module registered in a plugins.tml file.
- `twisted.python.rebuild.Sensitive`: A utility mixin that's sensitive to rebuilds.
- `twisted.python.reflect.Accessor`: Extending this class will give you explicit accessor methods; a method called `set_foo`, for example, is the same as an if statement in `__setattr__` looking for `'foo'`.
  - `twisted.internet.app.Application`: I am the `root object' in a Twisted process.
  - `twisted.internet.app.ApplicationService`: I am a service you can add to an application.
    - `twisted.internet.app.MultiService`: I am a collection of multiple services.
      - `twisted.internet.app.DependentMultiService`: I am a MultiService that starts services in insert order, and stops them in the reverse order.
    - `twisted.cred.service.Service`: I am a service that internet applications interact with.
      - `twisted.spread.pb.Service`: A service for Perspective Broker.
        - `twisted.words.service.Service`: I am a chat service.
  - `twisted.cred.authorizer.Authorizer`: An interface to a set of identities.
    - `twisted.enterprise.dbcred.DatabaseAuthorizer`: A PyPgSQL authorizer for Twisted Cred
    - `twisted.cred.authorizer.DefaultAuthorizer`: I am an authorizer which requires no external dependencies.
      - `twisted.conch.authorizer.OpenSSHConchAuthorizer`
    - `twisted.enterprise.dbcred.ReflectorAuthorizer`: An authorizer that uses a given row reflector.
  - `twisted.python.reflect.Summer`: Extend from this class to get the capability to maintain 'related sums'.
  - `twisted.words.tendril.TendrilFactory`: I build Tendril clients for a words service.
- `twisted.python.reflect.AccessorType`: Metaclass that generates properties automatically.
- `twisted.python.reflect.PropertyAccessor`: A mixin class for Python 2.2 that uses AccessorType.
- `twisted.python.reflect.QueueMethod`: I represent a method that doesn't exist yet.
- `twisted.python.reflect.Settable`: A mixin class for syntactic sugar.
- `twisted.python.roots.Collection`: I represent a static collection of entities.
  - `twisted.python.roots.Constrained`: A collection that has constraints on its names and/or entities.
    - `twisted.python.roots.Homogenous`: A homogenous collection of entities.
      - `twisted.web.vhost.VirtualHostCollection`: Wrapper for virtual hosts collection.
    - `twisted.python.roots.Locked`: A collection that can be locked from adding entities.
- `twisted.python.roots.ConstraintViolation`: An exception raised when a constraint is violated.
- `twisted.python.roots.Entity`: I am a terminal object in a hierarchy, with no children.
- `twisted.python.roots.NotSupportedError`: An exception meaning that the tree-manipulation operation you're attempting to perform is not supported.
- `twisted.python.roots.Request`: I am an abstract representation of a request for an entity.
- `twisted.python.runtime.Platform`: Gives us information about the platform we're running on
- `twisted.python.syslog.SyslogObserver`
- `twisted.python.threadable.ThreadableError`
- `twisted.python.threadable._Waiter`
  - `twisted.python.threadable._ThreadedWaiter`
- `twisted.python.threadable._XLock`: Exclusive lock class.
- `twisted.python.threadpool.ThreadPool`: This class (hopefully) generalizes the functionality of a pool of threads to which work can be dispatched.
- `twisted.python.threadpool.ThreadSafeList`: In Jython 2.1 lists aren't thread-safe, so this wraps it.
- `twisted.python.timeoutqueue.TimedOut`
- `twisted.python.timeoutqueue.TimeoutQueue`: A thread-safe queue that supports timeouts
- `twisted.python.urlpath.URLPath`
- `twisted.python.usage.Options`: An option list parser class
  - `twisted.scripts.tapconvert.ConvertOptions`
  - `twisted.scripts.mktap.FirstPassOptions`
  - `twisted.scripts.ckeygen.GeneralOptions`
  - `twisted.scripts.tap2deb.MyOptions`
  - `twisted.scripts.tap2rpm.MyOptions`
  - `twisted.im.tap.Options`
  - `twisted.mail.tap.Options`
  - `twisted.names.tap.Options`
  - `twisted.runner.inetdtap.Options`
  - `twisted.scripts.htmlizer.Options`
  - `twisted.scripts.lore.Options`
  - `twisted.scripts.trial.Options`
  - `twisted.scripts.websetroot.Options`
  - `twisted.tap.conch.Options`
  - `twisted.tap.ftp.Options`
  - `twisted.tap.manhole.Options`
  - `twisted.tap.portforward.Options`
  - `twisted.tap.socks.Options`
  - `twisted.tap.telnet.Options`
  - `twisted.tap.toc.Options`
  - `twisted.tap.web.Options`
  - `twisted.tap.words.Options`
  - `twisted.application.app.ServerOptions`
    - `twisted.scripts.twistd.ServerOptions`
    - `twisted.scripts.twistw.ServerOptions`
  - `twisted.scripts.tkunzip.TkunzipOptions`
- `twisted.python.usage.UsageError`
  - `twisted.scripts.manhole.NoToolkitError`
- `twisted.python.util.FancyEqMixin`
- `twisted.python.util.FancyStrMixin`: Set showAttributes to a sequence of strings naming attributes, OR sequences of (attributeName, displayName, formatCharacter)
- `twisted.python.util.InsensitiveDict`: Dictionary, that has case-insensitive keys.
- `twisted.python.util.IntervalDifferential`: Given a list of intervals, generate the amount of time to sleep between "instants".
- `twisted.python.util.LineLog`: A limited-size line-based log, useful for logging line-based protocols such as SMTP.
- `twisted.python.util.OrderedDict`: A UserDict that preserves insert order whenever possible.
- `twisted.python.util._IntervalDifferentialIterator`
- `twisted.python.zipstream.ChunkingZipFile`: A ZipFile object which, with readfile(), also gives you access to a filelike object for each entry.
- `twisted.python.zipstream.DeflatedZipFileEntry`: File-like object used to read a deflated entry in a ZipFile
- `twisted.python.zipstream.ZipFileEntry`: File-like object used to read an uncompressed entry in a ZipFile
- `twisted.runner.inetdconf.InetdService`: A simple description of an inetd service.
- `twisted.runner.inetdconf.InvalidConfError`: Invalid configuration file
  - `twisted.runner.inetdconf.InvalidInetdConfError`: Invalid inetd.conf file
  - `twisted.runner.inetdconf.InvalidRPCServicesConfError`: Invalid rpc services file
  - `twisted.runner.inetdconf.InvalidServicesConfError`: Invalid services file
- `twisted.runner.inetdconf.SimpleConfFile`: Simple configuration file parser superclass.
  - `twisted.runner.inetdconf.InetdConf`: Configuration parser for a traditional UNIX inetd(8)
  - `twisted.runner.inetdconf.RPCServicesConf`: /etc/rpc parser
  - `twisted.runner.inetdconf.ServicesConf`: /etc/services parser
- `twisted.runner.inetdconf.UnknownService`: Unknown service name
- `twisted.runner.procmon.DummyTransport`
- `twisted.scripts.mailmail.Configuration`: @ivar allowUIDs @ivar allowGIDs @ivar denyUIDs @ivar denyGIDs @ivar useraccess @ivar groupaccess @ivar identities @ivar smarthost @ivar domain @ivar defaultAccess
- `twisted.scripts.mailmail.Options`:
- `twisted.scripts.tkunzip.ProgressBar`
- `twisted.scripts.tkunzip.Progressor`: A base class to make it simple to hook a progress bar up to a process.
- `twisted.spread.banana.BananaError`
- `twisted.spread.flavors.RemoteCacheMethod`: A method on a reference to a `RemoteCache`.
- `twisted.spread.flavors.RemoteCacheObserver`: I am a reverse-reference to the peer's `RemoteCache`.
- `twisted.spread.jelly.DummySecurityOptions`: DummySecurityOptions() -> insecure security options Dummy security options -- this class will allow anything.
- `twisted.spread.jelly.InsecureJelly`: This exception will be raised when a jelly is deemed `insecure'; e.g.
- `twisted.spread.jelly.Jellyable`: Inherit from me to Jelly yourself directly with the `getStateFor' convenience method.
  - `twisted.spread.flavors.Serializable`: An object that can be passed remotely.
    - `twisted.spread.flavors.Copyable`: Subclass me to get copied each time you are returned from or passed to a remote method.
      - `twisted.spread.flavors.Cacheable`: A cached instance.
        - `twisted.manhole.explorer.Explorer`
          - `twisted.manhole.explorer.ExplorerBuiltin`:
          - `twisted.manhole.explorer.ExplorerClass`:
          - `twisted.manhole.explorer.ExplorerFunction`
            - `twisted.manhole.explorer.ExplorerMethod`
          - `twisted.manhole.explorer.ExplorerGeneric`
          - `twisted.manhole.explorer.ExplorerImmutable`
          - `twisted.manhole.explorer.ExplorerInstance`: Attribute groups:
          - `twisted.manhole.explorer.ExplorerMapping`
          - `twisted.manhole.explorer.ExplorerModule`:
          - `twisted.manhole.explorer.ExplorerSequence`
        - `twisted.spread.publish.Publishable`: An object whose cached state persists across sessions.
      - `twisted.spread.pb.CopyableFailure`: A `flavors.RemoteCopy` and `flavors.Copyable` version of `twisted.python.failure.Failure` for serialization.
      - `twisted.web.server.Request`
        - `twisted.web.distrib.Request`
      - `twisted.manhole.explorer.Signature`: I represent the signature of a callable.
    - `twisted.spread.flavors.Referenceable`
      - `twisted.spread.pb._PortalAuthChallenger`: Called with response to password challenge.
      - `twisted.spread.pb._PortalWrapper`: Root Referenceable object, used to login to portal.
      - `twisted.web.distrib._ReferenceableProducerWrapper`
      - `twisted.spread.pb.AsReferenceable`: AsReferenceable: a reference directed towards another object.
      - `twisted.spread.pb.AuthChallenger`: DEPRECATED.
      - `twisted.spread.pb.AuthServ`: DEPRECATED.
      - `twisted.spread.util.CallbackPageCollector`: I receive pages from the peer.
      - `twisted.spread.pb.IdentityWrapper`: DEPRECATED.
      - `twisted.mail.pb.Maildir`
      - `twisted.mail.pb.MaildirCollection`
      - `twisted.manhole.ui.gtk2manhole.ManholeClient`
      - `twisted.spread.refpath.PathReferenceContextDirectory`
      - `twisted.spread.refpath.PathReferenceDirectory`
      - `twisted.spread.flavors.Root`: I provide a root object to `pb.Broker`s for a `pb.BrokerFactory`.
        - `twisted.spread.pb.AuthRoot`: DEPRECATED.
        - `twisted.web.distrib.ResourcePublisher`
      - `twisted.im.pbsupport.TwistedWordsClient`: In some cases, this acts as an Account, since it a source of text messages (multiple Words instances may be on a single PB connection)
      - `twisted.spread.flavors.ViewPoint`: I act as an indirect reference to an object accessed through a `pb.Perspective`.
    - `twisted.spread.flavors.RemoteCache`: A cache is a local representation of a remote `Cacheable` object.
      - `twisted.spread.publish.RemotePublished`: The local representation of remote Publishable object.
    - `twisted.spread.pb.RemoteReference`: This is a translucent reference to a remote object.
    - `twisted.spread.flavors.Viewable`: I will be converted to a `ViewPoint` when passed to or returned from a remote method.
      - `twisted.web.twcgi.CGIProcessProtocol`
      - `twisted.web.static.FileTransfer`: A class to represent the transfer of a file over the network.
      - `twisted.spread.refpath.PathViewContextDirectory`
      - `twisted.spread.refpath.PathViewDirectory`
- `twisted.spread.jelly.SecurityOptions`: This will by default disallow everything, except for 'none'.
- `twisted.spread.jelly.Unjellyable`: Inherit from me to Unjelly yourself directly with the `setStateFor' convenience method.
  - `twisted.spread.flavors.RemoteCopy`: I am a remote copy of a Copyable object.
    - `twisted.spread.pb.CopiedFailure`
    - `twisted.spread.flavors.RemoteCache`: A cache is a local representation of a remote `Cacheable` object.
      - `twisted.spread.publish.RemotePublished`: The local representation of remote Publishable object.
    - `twisted.web.distrib.Request`
- `twisted.spread.jelly.Unpersistable`: This is an instance of a class that comes back when something couldn't be persisted.
- `twisted.spread.jelly._Dummy`: (Internal) Dummy class, used for unserializing instances.
- `twisted.spread.jelly._Jellier`: (Internal) This class manages state for a call to jelly()
- `twisted.spread.jelly._Unjellier`
- `twisted.spread.newjelly.DummySecurityOptions`: DummySecurityOptions() -> insecure security options Dummy security options -- this class will allow anything.
- `twisted.spread.newjelly.InsecureJelly`: This exception will be raised when a jelly is deemed `insecure'; e.g.
- `twisted.spread.newjelly.Jellyable`: Inherit from me to Jelly yourself directly.
- `twisted.spread.newjelly.NullReference`: This object is a marker for when a reference is made to an object that can't be referenced, i.e.
- `twisted.spread.newjelly.SecurityOptions`: This will by default disallow everything, except for 'none'.
- `twisted.spread.newjelly.Unjellyable`: Inherit from me to Unjelly yourself directly.
- `twisted.spread.newjelly.Unpersistable`: This is an instance of a class that comes back when something couldn't be persisted.
- `twisted.spread.newjelly._Dummy`: (Internal) Dummy class, used for unserializing instances.
- `twisted.spread.newjelly._Jellier`: (Internal) This class manages state for a call to jelly()
- `twisted.spread.newjelly._Unjellier`
- `twisted.spread.pb.Avatar`: A default IPerspective implementor.
  - `twisted.manhole.service.Perspective`
  - `twisted.spread.pb.Perspective`: This class is DEPRECATED, because it relies on old cred APIs.
    - `twisted.words.service.Participant`
- `twisted.spread.pb.Error`: This error can be raised to generate known error conditions.
  - `twisted.words.service.WordsError`
    - `twisted.words.service.NotInCollectionError`
      - `twisted.words.service.NotInGroupError`
      - `twisted.words.service.UserNonexistantError`
    - `twisted.words.service.WrongStatusError`
- `twisted.spread.pb.IdentityConnector`: DEPRECATED.
- `twisted.spread.pb.Local`: (internal) A reference to a local object.
- `twisted.spread.pb.PBConnectionLost`
- `twisted.spread.pb.ProtocolError`: This error is raised when an invalid protocol statement is received.
  - `twisted.spread.pb.DeadReferenceError`: This error is raised when a method is called on a dead reference (one whose broker has been disconnected).
- `twisted.spread.pb.RemoteMethod`: This is a translucent reference to a remote message.
- `twisted.spread.pb._Detacher`: DEPRECATED.
- `twisted.spread.pb._ObjectRetrieval`: DEPRECATED.
- `twisted.spread.pb._PortalRoot`: Root object, used to login to portal.
- `twisted.spread.pb._RemoteCacheDummy`: Ignore.
- `twisted.spread.refpath.PathReference`
- `twisted.spread.refpath.PathReferenceContext`
- `twisted.spread.refpath.RemotePathReference`
- `twisted.spread.sturdy.PerspectiveConnector`
- `twisted.spread.ui.gtk2util.GladeKeeper`:
  - `twisted.spread.ui.gtk2util.LoginDialog`
  - `twisted.manhole.ui.gtk2manhole.ManholeWindow`
- `twisted.spread.ui.gtkutil.ButtonBar`
- `twisted.spread.util.LocalAsRemote`: A class useful for emulating the effects of remote behavior locally.
- `twisted.spread.util.LocalAsyncForwarder`: A class useful for forwarding a locally-defined interface.
- `twisted.spread.util.LocalMethod`
- `twisted.spread.util.Pager`: I am an object which pages out information.
  - `twisted.spread.util.FilePager`: Reads a file in chunks and sends the chunks as they come.
  - `twisted.spread.util.StringPager`: A simple pager that splits a string into chunks.
- `twisted.trial.remote.DemoRemoteReporter`
- `twisted.trial.remote.NullTransport`: Transport to /dev/null.
- `twisted.trial.reporter.Reporter`: I report results from a run of a test suite.
  - `twisted.trial.remote.JellyReporter`: I report results as a Banana-encoded Jelly stream.
  - `twisted.trial.reporter.MinimalReporter`
  - `twisted.trial.reporter.TextReporter`
    - `twisted.trial.reporter.TimingTextReporter`
    - `twisted.trial.reporter.TreeReporter`
    - `twisted.trial.reporter.VerboseTextReporter`
- `twisted.trial.runner.SingletonRunner`
  - `twisted.trial.runner.PerformanceSingletonRunner`
- `twisted.trial.runner.TestClassRunner`
  - `twisted.trial.runner.PerformanceTestClassRunner`
- `twisted.trial.unittest.FailTest`: Raised to indicate the current test has failed to pass.
- `twisted.trial.unittest.SkipTest`: Raise this (with a reason) to skip the current test.
- `twisted.trial.unittest.TestCase`
- `twisted.trial.unittest.TestSuite`
- `twisted.trial.unittest.Tester`: I contain all the supporting machinery for running a single test method.
- `twisted.web.distrib.Issue`
- `twisted.web.domhelpers.NodeLookupError`
- `twisted.web.error.Error`
  - `twisted.web.error.PageRedirect`: A request that resulted in a http redirect
- `twisted.web.guard._Detacher`: Detach a web session from an attached perspective.
- `twisted.web.microdom.MismatchedTags`
- `twisted.web.microdom.Node`
  - `twisted.web.microdom.CharacterData`
    - `twisted.web.microdom._Attr`: Support class for getAttributeNode.
    - `twisted.web.microdom.CDATASection`
    - `twisted.web.microdom.Comment`: A comment node.
    - `twisted.web.microdom.Text`
      - `twisted.web.domhelpers.RawText`: This is an evil and horrible speed hack.
  - `twisted.web.microdom.Document`
  - `twisted.web.microdom.Element`
  - `twisted.web.microdom.EntityReference`
- `twisted.web.microdom.lmx`: Easy creation of XML.
- `twisted.web.monitor.BaseChangeNotified`
- `twisted.web.monitor.ChangeChecker`
  - `twisted.web.monitor.ProxyChangeChecker`
- `twisted.web.monitor.IChangeNotified`
- `twisted.web.resource.Resource`: I define a web-accessible resource.
  - `twisted.web.vhost._HostResource`
  - `twisted.web.static.ASISProcessor`
  - `twisted.web.woven.controller.BlankPage`
  - `twisted.web.twcgi.CGIDirectory`
  - `twisted.web.twcgi.CGIScript`: I represent a CGI script.
    - `twisted.web.twcgi.FilteredScript`: I am a special version of a CGI script, that uses a specific executable.
      - `twisted.web.twcgi.PHP3Script`: I am a FilteredScript that uses the default PHP3 command on most systems.
      - `twisted.web.twcgi.PHPScript`: I am a FilteredScript that uses the PHP command on most systems.
  - `twisted.web.woven.controller.Controller`: A Controller which handles to events from the user.
    - `twisted.web.woven.template.DOMController`: A simple controller that automatically passes responsibility on to the view class registered for the model.
    - `twisted.web.woven.input.InputHandler`: An InputHandler is like a controller, but it operates on something contained inside of `self.model` instead of directly on `self.model`.
      - `twisted.web.woven.input.DefaultHandler`
      - `twisted.web.woven.input.List`
      - `twisted.web.woven.input.SingleValue`
        - `twisted.web.woven.input.Anything`: Handle anything except for None
          - `twisted.web.woven.input.DictAggregator`: An InputHandler for a <form> tag, for triggering a function when all of the form's individual inputs have been validated.
          - `twisted.web.woven.input.ListAggregator`
        - `twisted.web.woven.input.Float`: Only allow a single float
        - `twisted.web.woven.input.Integer`: Only allow a single integer
    - `twisted.web.woven.controller.LiveController`: A Controller that encapsulates logic that makes it possible for this page to be "Live".
      - `twisted.web.woven.page.LivePage`
    - `twisted.web.woven.page.Page`:
      - `twisted.web.woven.dirlist.DirectoryLister`
      - `twisted.web.distrib.UserDirectory`
  - `twisted.web.static.Data`: This is a static, in-memory resource.
    - `twisted.web.test.Test`
  - `twisted.web.util.DeferredResource`: I wrap up a Deferred that will eventually result in a Resource object.
  - `twisted.web.woven.template.DOMController`: A simple controller that automatically passes responsibility on to the view class registered for the model.
  - `twisted.web.woven.template.DOMTemplate`: A resource that renders pages using DOM.
  - `twisted.web.error.ErrorPage`
    - `twisted.web.error.ForbiddenResource`
    - `twisted.web.error.NoResource`
  - `twisted.web.static.File`: File is a resource that represents a plain non-interpreted file (although it can look for an extension like .rpy or .cgi and hand the file to a processor for interpretation if you wish).
  - `twisted.web.woven.form.FormProcessor`
  - `twisted.web.widgets.Gadget`: I am a collection of Widgets, to be rendered through a Page Factory.
    - `twisted.enterprise.dbgadgets.ChangePasswordForm`
    - `twisted.enterprise.dbgadgets.IdentitiesGadget`
    - `twisted.enterprise.dbgadgets.NewIdentityForm`
    - `twisted.enterprise.dbgadgets.NewPerspectiveForm`
    - `twisted.words.webwords.ParticipantListWidget`
    - `twisted.enterprise.dbgadgets.PerspectivesGadget`
    - `twisted.enterprise.dbgadgets.RemoveIdentityForm`
    - `twisted.enterprise.dbgadgets.RemovePerspectiveForm`
    - `twisted.words.webwords.WordsGadget`
  - `twisted.web.woven.tapestry.ModelLoader`: Resource for loading models.
  - `twisted.web.vhost.NameVirtualHost`: I am a resource which represents named virtual hosts.
  - `twisted.web.widgets.Page`
    - `twisted.web.guard.AuthPage`
    - `twisted.web.widgets.WidgetPage`: I am a Page that takes a Widget in its constructor, and displays that Widget wrapped up in a simple HTML template.
  - `twisted.web.util.ParentRedirect`: I redirect to URLPath.here().
  - `twisted.web.woven.guard.PerspectiveWrapper`: DEPRECATED.
  - `twisted.web.script.PythonScript`: I am an extremely simple dynamic resource; an embedded python script.
  - `twisted.web.static.Redirect`
  - `twisted.web.util.Redirect`
    - `twisted.web.util.ChildRedirector`
  - `twisted.flow.web.Resource`: a resource which uses flow in its page generation...
  - `twisted.web.guard.ResourceGuard`
  - `twisted.web.script.ResourceScriptDirectory`
  - `twisted.web.script.ResourceScriptWrapper`
  - `twisted.web.distrib.ResourceSubscription`
  - `twisted.web.proxy.ReverseProxyResource`: Resource that renders the results gotten from another server
  - `twisted.web.rewrite.RewriterResource`
  - `twisted.web.woven.guard.SessionWrapper`
  - `twisted.web.soap.SOAPPublisher`: Publish SOAP methods.
  - `twisted.web.woven.tapestry.Tapestry`: I am a top-level aggregation of Woven objects: a full `site' or `application'.
  - `twisted.web.woven.guard.UsernamePasswordWrapper`: I bring a `twisted.cred` Portal to the web.
  - `twisted.web.vhost.VHostMonsterResource`: Use this to be able to record the hostname and method (http vs.
  - `twisted.web.widgets.WidgetResource`
  - `twisted.web.xmlrpc.XMLRPC`: A resource that implements XML-RPC.
    - `twisted.web.xmlrpc.XMLRPCIntrospection`: Implement the XML-RPC Introspection API.
- `twisted.web.script.AlreadyCached`: This exception is raised when a path has already been cached.
- `twisted.web.script.CacheScanner`
- `twisted.web.server.UnsupportedMethod`: Raised by a resource when faced with a strange request method.
- `twisted.web.server._RemoteProducerWrapper`
- `twisted.web.soap.Proxy`: A Proxy for making remote SOAP calls.
- `twisted.web.widgets.FormInputError`
- `twisted.web.widgets.RenderSession`: I handle rendering of a list of deferreds, outputting their results in correct order.
- `twisted.web.widgets.Sentinel`
- `twisted.web.widgets.Widget`: A component of a web page.
  - `twisted.web.widgets.Container`
  - `twisted.web.widgets.DataWidget`
  - `twisted.web.widgets.Form`: I am a web form.
    - `twisted.words.webwords.AccountCreationWidget`
    - `twisted.web.guard.AuthForm`
    - `twisted.enterprise.dbgadgets.ChangePasswordForm`
    - `twisted.enterprise.dbgadgets.NewIdentityForm`
    - `twisted.enterprise.dbgadgets.NewPerspectiveForm`
    - `twisted.enterprise.dbgadgets.RemoveIdentityForm`
    - `twisted.enterprise.dbgadgets.RemovePerspectiveForm`
  - `twisted.words.webwords.ParticipantInfoWidget`
  - `twisted.words.webwords.ParticipantListWidget`
  - `twisted.enterprise.dbgadgets.PerspectivesGadget`
  - `twisted.web.widgets.Presentation`: I am a widget which formats a template with interspersed python expressions.
    - `twisted.web.widgets.Page`
      - `twisted.web.guard.AuthPage`
      - `twisted.web.widgets.WidgetPage`: I am a Page that takes a Widget in its constructor, and displays that Widget wrapped up in a simple HTML template.
    - `twisted.web.widgets.Reloader`
    - `twisted.web.widgets.TitleBox`
  - `twisted.web.widgets.StreamWidget`: A 'streamable' component of a webpage.
    - `twisted.enterprise.dbgadgets.IdentitiesGadget`
    - `twisted.web.widgets.Sidebar`
  - `twisted.web.widgets.Time`
  - `twisted.web.guard.WidgetGuard`
  - `twisted.web.widgets.WidgetMixin`: A mix-in wrapper for a Widget.
  - `twisted.words.webwords.WordsGadget`
- `twisted.web.widgets._RequestDeferral`
- `twisted.web.woven.model.Model`: A Model which keeps track of views which are looking at it in order to notify them when the model changes.
  - `twisted.web.woven.model.AttributeModel`: Look up submodels as attributes with hosts.allow/deny-style security.
    - `twisted.web.woven.model.Link`
  - `twisted.web.woven.model.MethodModel`: Look up submodels with wmfactory_* methods.
    - `twisted.web.woven.form._RequestHack`
    - `twisted.web.woven.form.FormDisplayModel`
      - `twisted.web.woven.form.FormErrorModel`
    - `twisted.web.woven.page.LivePage`
    - `twisted.web.woven.page.Page`:
      - `twisted.web.woven.dirlist.DirectoryLister`
      - `twisted.web.distrib.UserDirectory`
  - `twisted.web.woven.model.Wrapper`: I'm a generic wrapper to provide limited interaction with the Woven models and submodels.
    - `twisted.web.woven.model.AttributeWrapper`: I wrap an attribute named "name" of the given parent object.
    - `twisted.web.woven.model.DeferredWrapper`
    - `twisted.web.woven.model.DictionaryModel`: I wrap a Python dictionary and allow it to interact with the Woven models and submodels.
    - `twisted.web.woven.model.ListModel`: I wrap a Python list and allow it to interact with the Woven models and submodels.
      - `twisted.web.woven.model.StringModel`: I wrap a Python string and allow it to interact with the Woven models and submodels.
    - `twisted.web.woven.model.ObjectWrapper`: I may wrap an object and allow it to interact with the Woven models and submodels.
      - `twisted.web.woven.model.UnsafeObjectWrapper`: I may wrap an object and allow it to interact with the Woven models and submodels.
- `twisted.web.woven.model._Nothing`
- `twisted.web.woven.simpleguard.Authenticated`
- `twisted.web.woven.simpleguard.MarkAuthenticatedResource`
- `twisted.web.woven.simpleguard.MarkingRealm`
- `twisted.web.woven.template.NodeMutator`
  - `twisted.web.woven.template.NodeNodeMutator`: A NodeNodeMutator replaces the node that is passed in to generate with the node it adapts.
  - `twisted.web.woven.template.NoneNodeMutator`
  - `twisted.web.woven.template.StringNodeMutator`: A StringNodeMutator replaces the node that is passed in to generate with the string it adapts.
  - `twisted.web.widgets.WebWidgetNodeMutator`: A WebWidgetNodeMutator replaces the node that is passed in to generate with the result of generating the twisted.web.widget instance it adapts.
- `twisted.web.woven.utils.GetFunction`
- `twisted.web.woven.utils.Script`
- `twisted.web.woven.utils.SetId`
- `twisted.web.woven.utils.Stack`
- `twisted.web.woven.utils.WovenLivePage`
- `twisted.web.woven.view.View`
  - `twisted.web.woven.view.LiveView`
    - `twisted.web.woven.page.LivePage`
  - `twisted.web.woven.page.Page`:
    - `twisted.web.woven.dirlist.DirectoryLister`
    - `twisted.web.distrib.UserDirectory`
  - `twisted.web.woven.tapestry.TapestryView`
  - `twisted.web.woven.widgets.Widget`: A Widget wraps an object, its model, for display.
    - `twisted.web.woven.widgets.Anchor`
      - `twisted.web.woven.widgets.DirectoryAnchor`
      - `twisted.web.woven.widgets.SubAnchor`
    - `twisted.web.woven.widgets.Attributes`: Set attributes on a node.
    - `twisted.web.woven.widgets.Bold`
    - `twisted.web.woven.widgets.Br`
    - `twisted.web.woven.widgets.Break`: Break into pdb when this widget is rendered.
    - `twisted.web.woven.widgets.Cell`
    - `twisted.web.woven.widgets.ColumnList`
    - `twisted.web.woven.widgets.DefaultWidget`
    - `twisted.web.woven.widgets.DeferredWidget`
    - `twisted.web.woven.widgets.Div`
    - `twisted.web.woven.widgets.Error`
    - `twisted.web.woven.widgets.ExpandMacro`: A Macro expansion widget modeled after the METAL expander in ZPT/TAL/METAL.
    - `twisted.web.woven.form.FormFillerWidget`
      - `twisted.web.woven.form.FormErrorWidget`
    - `twisted.web.woven.widgets.Image`: A simple Widget that creates an `img' tag.
    - `twisted.web.woven.widgets.Input`
      - `twisted.web.woven.widgets.Button`
      - `twisted.web.woven.widgets.CheckBox`
      - `twisted.web.woven.widgets.File`
      - `twisted.web.woven.widgets.Hidden`
      - `twisted.web.woven.widgets.InputText`
      - `twisted.web.woven.widgets.PasswordText`: I render a password input field.
      - `twisted.web.woven.widgets.RadioButton`
      - `twisted.web.woven.widgets.Select`
    - `twisted.web.woven.widgets.Link`: A utility class for generating <a href='foo'>bar</a> tags.
      - `twisted.web.woven.widgets.RootRelativeLink`: Just like a regular Link, only it makes the href relative to the appRoot (that is, request.getRootURL()).
    - `twisted.web.woven.widgets.List`: I am a widget which knows how to generateDOM for a python list.
      - `twisted.web.woven.widgets.KeyedList`: I am a widget which knows how to display the values stored within a Python dictionary..
    - `twisted.web.woven.widgets.Option`
    - `twisted.web.woven.widgets.ParagraphText`: Like a normal text widget, but it takes line breaks in the text and formats them as HTML paragraphs.
    - `twisted.web.woven.widgets.RawText`
    - `twisted.web.woven.widgets.Row`
    - `twisted.web.woven.widgets.Span`
    - `twisted.web.woven.widgets.Table`
    - `twisted.web.woven.widgets.Text`: A simple Widget that renders some text.
- `twisted.web.woven.widgets.Dummy`
- `twisted.web.xmlrpc.Handler`: Handle a XML-RPC request and store the state for a request in progress.
- `twisted.web.xmlrpc.NoSuchFunction`: There is no function by the given name.
- `twisted.web.xmlrpc.Proxy`: A Proxy for making remote XML-RPC calls.
- `twisted.words.service.NormalPolicy`
- `twisted.words.service.Transcript`: I am a transcript of a conversation between multiple parties.
- `twisted.words.service.WordsClient`
  - `twisted.words.botbot.BotBot`
  - `twisted.words.ircservice.IRCChatter`
  - `twisted.words.tendril.ProxiedParticipant`: I'm the client of a participant who is connected through Tendril.
  - `twisted.words.tendril.TendrilWords`
- `twisted.words.webwords.Page`: Backwards Compatibility.
- `twisted.xish.domish.Element`: Object representing a container (a.k.a.
  - `twisted.protocols.jabber.client.IQ`: Wrapper for a Info/Query packet
- `twisted.xish.domish.ExpatElementStream`
- `twisted.xish.domish.Namespace`: Convenience object for tracking namespace declarations
- `twisted.xish.domish.ParserError`: Exception thrown when a parsing error occurs
- `twisted.xish.domish.SerializedXML`: Marker class for pre-serialized XML in the DOM
- `twisted.xish.domish._ListSerializer`: Internal class which serializes an Element tree into a buffer
- `twisted.xish.domish._Serializer`: Internal class which serializes an Element tree into a buffer
- `twisted.xish.utility.CallbackList`
- `twisted.xish.utility.EventDispatcher`
  - `twisted.protocols.xmlstream.XmlStream`
- `twisted.xish.utility._MethodWrapper`: Internal class for tracking method calls
- `twisted.xish.xpath.AttribValue`
- `twisted.xish.xpath.CompareValue`
- `twisted.xish.xpath.IndexValue`
- `twisted.xish.xpath.LiteralValue`
- `twisted.xish.xpath.XPathQuery`
- `twisted.xish.xpath._AnyLocation`
- `twisted.xish.xpath._Location`
- `twisted.xish.xpath._juserhost_Function`
- `twisted.xish.xpath._not_Function`
- `twisted.xish.xpath._text_Function`
- `twisted.xish.xpathparser.Context`: Class to represent the parser's call stack.
- `twisted.xish.xpathparser.NoMoreTokens`: Another exception object, for when we run out of tokens
- `twisted.xish.xpathparser.Parser`: Base class for Yapps-generated parsers.
  - `twisted.xish.xpathparser.XPathParser`
- `twisted.xish.xpathparser.Scanner`: Yapps scanner.
  - `twisted.xish.xpathparser.XPathParserScanner`
- `twisted.xish.xpathparser.SyntaxError`: When we run into an unexpected token, this is the exception to use

Generated by Epydoc 2.0 on Sat May 15 20:09:22 2004 | http://epydoc.sf.net