Metadata-Version: 1.1
Name: orderedattrdict
Version: 1.1.1
Summary: OrderedDict with attribute-style access
Home-page: https://github.com/sanand0/orderedattrdict
Author: S Anand
Author-email: root.node@gmail.com
License: MIT
Description: orderedattrdict
        ===============
        
        An ordered dictionary with attribute-style access.
        
        Usage
        -----
        
        ``AttrDict`` behaves exactly like ``collections.OrderedDict``, but also allows
        keys to be accessed as attributes::
        
            >>> from orderedattrdict import AttrDict
            >>> conf = AttrDict()
            >>> conf['z'] = 1
            >>> assert conf.z == 1
            >>> conf.y = 2
            >>> assert conf['y'] == 2
            >>> conf.x = 3
            >>> assert conf.keys() == ['z', 'y', 'x']
        
        **NOTE**: If the key clashes with an AttrDict attribute, the key is not used.
        This also applies if the key starts with ``__`` (two underscores). For example::
        
            >>> a = AttrDict(keys=1)
            >>> a.keys
            <bound method AttrDict.keys of AttrDict([('keys', 1)])>
            >>> a['keys']
            1
        
        Load JSON preserving the order of keys::
        
            >>> import json
            >>> data = json.load(open('test.json'), object_pairs_hook=AttrDict)
        
        Load YAML preserving the order of keys::
        
            >>> import yaml
            >>> from orderedattrdict.yamlutils import AttrDictYAMLLoader
            >>> data = yaml.load(open('test.yaml'), Loader=AttrDictYAMLLoader)
        
        Make PyYAML *always* load all dictionaries as ``AttrDict``::
        
            >>> from orderedattrdict.yamlutils import from_yaml
            >>> yaml.add_constructor(u'tag:yaml.org,2002:map', from_yaml)
            >>> yaml.add_constructor(u'tag:yaml.org,2002:omap', from_yaml)
        
        ``json.dump``, ``yaml.dump`` and ``yaml.safe_dump`` convert ``AttrDict`` into
        dictionaries, retaining the order::
        
            >>> json.dumps(data)
            >>> yaml.dump(data)
        
        Installation
        ------------
        
        This is a pure-Python package is build for Python 2.7+ and Python 3.0+. Set it
        up using::
        
            pip install orderedattdict
        
Keywords: ordereddict ordered map attrdict conf config configuration yaml json
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries :: Python Modules
