<?xml version="1.0" encoding="iso-8859-1"?>
<module name="Ft.Server.Server.Http.HeaderDict" file="/work/a/ports/textproc/py-4suite/work/4Suite-1.0b1/build/lib.freebsd-7.1-RELEASE-i386-2.4/Ft/Server/Server/Http/HeaderDict.py">
  <modification-date>2005-03-06 03:53:55</modification-date>
  <abstract>MIME message header storage for HTTP</abstract>
  <description>Copyright 2005 Fourthought, Inc. (USA).
Detailed license and copyright information: http://4suite.org/COPYRIGHT
Project home, documentation, distributions: http://4suite.org/</description>
  <classes>
    <class name="HeaderDict" public="yes">
      <bases>
        <base documented="no" class="dict" module="__builtin__"/>
      </bases>
      <abstract>A dictionary-like object for storing MIME-like message headers.
Headers are stored in the object via regular dictionary interfaces.
They are retrieved via str(), repr() or self.terse(), which returns
a standard dict with duplicate headers merged into a comma-separated
list of values (even when it is not OK to do so).</abstract>
      <description>The reason this class is needed is because the dictionary interface of
the Message class of the rfc822 and mimetools modules allows each new
header to overwrite a previously-stored header with the same key. Our
HeaderDict class stores its header values as lists, so no data is lost.
Its keys are accessed case-insensitively and are always written out
in a normalized format where usually only the first letter of each
hyphen-separated word is capitalized. (Content-MD5, ETag, TE, and
WWW-Authenticate are exceptions to this rule). The str(obj)
representation prints the headers in a convenient format suitable for
printing in a MIME-like message.</description>
      <method-resolution-order>
        <base name="HeaderDict" module="Ft.Server.Server.Http.HeaderDict"/>
        <base name="dict" module="__builtin__"/>
        <base name="object" module="__builtin__"/>
      </method-resolution-order>
      <methods documented="yes" class="HeaderDict" module="Ft.Server.Server.Http.HeaderDict" inherited="no">
        <method public="no" name="__contains__" id="HeaderDict-__contains__">
          <abstract># case-insensitive 'key in dict' lookup</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg name="key"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="no" name="__delitem__" id="HeaderDict-__delitem__">
          <abstract># case-insensitive deletion: removes entire list</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg name="key"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="no" name="__getitem__" id="HeaderDict-__getitem__">
          <abstract># case-insensitive lookup</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg name="key"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="no" name="__init__" id="HeaderDict-__init__">
          <abstract/>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg default="None" name="obj"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="no" name="__iter__" id="HeaderDict-__iter__">
          <abstract># case-insensitive 'for key in dict' iteration</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="no" name="__repr__" id="HeaderDict-__repr__">
          <abstract># string representations</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="no" name="__setitem__" id="HeaderDict-__setitem__">
          <abstract># case-insensitive storage; appends to a list</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg name="key"/>
            <arg name="value"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="no" name="__str__" id="HeaderDict-__str__">
          <abstract/>
          <description/>
          <arguments>
            <arg name="self"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="yes" name="get" id="HeaderDict-get">
          <abstract># retrieve a value or default if no such key</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg name="key"/>
            <arg default="None" name="default"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="yes" name="has_key" id="HeaderDict-has_key">
          <abstract># case-insensitive key lookup</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg name="key"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="yes" name="iteritems" id="HeaderDict-iteritems">
          <abstract/>
          <description/>
          <arguments>
            <arg name="self"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="yes" realid="HeaderDict-__iter__" name="iterkeys" realname="__iter__" id="HeaderDict-iterkeys">
          <abstract># case-insensitive 'for key in dict' iteration</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="yes" name="keys" id="HeaderDict-keys">
          <abstract># normalize key names</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
        <method public="yes" name="terse" id="HeaderDict-terse">
          <abstract># return a terse dictionary (duplicate headers in one comma-separated string)
# this is for compatibility with functions want to read the header values as
# a single string rather than as a python list of strings</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
          </arguments>
        </method>
        <method public="yes" name="update" id="HeaderDict-update">
          <abstract># append another dict or HeaderDict</abstract>
          <description/>
          <arguments>
            <arg name="self"/>
            <arg name="dict_"/>
          </arguments>
          <overrides name="dict" module="__builtin__"/>
        </method>
      </methods>
      <fields documented="yes" class="HeaderDict" module="Ft.Server.Server.Http.HeaderDict" inherited="no">
        <field public="no" name="__dict__" id="HeaderDict-__dict__">
          <abstract>dictionary for instance variables (if defined)</abstract>
          <description/>
          <value>&lt;attribute '__dict__' of 'HeaderDict' objects&gt;</value>
        </field>
        <field public="no" name="__weakref__" id="HeaderDict-__weakref__">
          <abstract>list of weak references to the object (if defined)</abstract>
          <description/>
          <value>&lt;attribute '__weakref__' of 'HeaderDict' objects&gt;</value>
        </field>
        <field public="yes" name="forceCaps" id="HeaderDict-forceCaps">
          <value>{'content-md5': 'Content-MD5', 'etag': 'ETag', 'te': 'TE', 'www-authenticate': 'WWW-Authenticate'}</value>
        </field>
      </fields>
      <methods documented="no" class="dict" module="__builtin__" inherited="yes">
        <member-reference name="__cmp__" public="no"/>
        <member-reference name="__eq__" public="no"/>
        <member-reference name="__ge__" public="no"/>
        <member-reference name="__getattribute__" public="no"/>
        <member-reference name="__gt__" public="no"/>
        <member-reference name="__hash__" public="no"/>
        <member-reference name="__le__" public="no"/>
        <member-reference name="__len__" public="no"/>
        <member-reference name="__lt__" public="no"/>
        <member-reference name="__ne__" public="no"/>
        <member-reference name="__new__" public="no"/>
        <member-reference name="clear" public="yes"/>
        <member-reference name="copy" public="yes"/>
        <member-reference name="items" public="yes"/>
        <member-reference name="itervalues" public="yes"/>
        <member-reference name="pop" public="yes"/>
        <member-reference name="popitem" public="yes"/>
        <member-reference name="setdefault" public="yes"/>
        <member-reference name="values" public="yes"/>
      </methods>
      <fields documented="no" class="dict" module="__builtin__" inherited="yes">
        <member-reference name="fromkeys" public="yes"/>
      </fields>
      <methods documented="no" class="object" module="__builtin__" inherited="yes">
        <member-reference name="__delattr__" public="no"/>
        <member-reference name="__reduce__" public="no"/>
        <member-reference name="__reduce_ex__" public="no"/>
        <member-reference name="__setattr__" public="no"/>
      </methods>
      <fields documented="no" class="object" module="__builtin__" inherited="yes">
        <member-reference name="__class__" public="no"/>
      </fields>
    </class>
  </classes>
  <fields>
    <field public="yes" name="generators" id="generators">
      <value>_Feature((2, 2, 0, 'alpha', 1), (2, 3, 0, 'final', 0), 4096)</value>
    </field>
  </fields>
</module>
