Metadata-Version: 1.1
Name: mergedict
Version: 0.1.2
Summary: A Python `dict` with a merge() method.
Home-page: https://github.com/schettino72/mergedict/
Author: Eduardo Naufel Schettino
Author-email: schettino72@gmail.com
License: MIT
Description: mergedict - A Python `dict` with a merge() method
        ===================================================
        
        A MergeDict is a `dict` with a `merge()` method.
        `merge()` is like `dict.update()`...
        
        ::
        
            from mergedict import MergeDict
        
            d1 = MergeDict({'a': 1, 'b': 'one'})
            d1.merge({'a':2, 'c': [2]})
        
            assert d1 == {'a': 2, 'c': [2], 'b': 'one'}
        
        
        A MergeDict can be subclassed to create custom "merge" operations
        based on the type of an item value.
        
        
        ::
        
            from mergedict import MergeDict
        
            class SumDict(MergeDict):
                  @MergeDict.dispatch(int)
                  def merge_int(this, other):
                      return this + other
        
            d2 = SumDict({'a': 1, 'b': 'one'})
            d2.merge({'a':2, 'b': 'two'})
        
            assert d2 == {'a': 3, 'b': 'two'}
        
        
        `mergedict` module comes with a `ConfigDict` that will
        extend/update lists/sets/dicts.
        
        ::
        
            from mergedict import ConfigDict
        
            d3 = ConfigDict({'a': 1, 'my_list': [1, 2]})
            d3.merge({'a':2, 'my_list': [3, 4]})
        
            assert d3 == {'a': 2, 'my_list': [1, 2, 3, 4]}
        
        
        
        
        Project Details
        ===============
        
        - Project management on github - https://github.com/schettino72/mergedict/
        
        
        license
        =======
        
        The MIT License
        Copyright (c) 2013 Eduardo Naufel Schettino
        
        see LICENSE file
        
        
        developers / contributors
        ==========================
        
        - Eduardo Naufel Schettino
        
        
        install
        =======
        
        ::
        
         $ pip install mergedict
        
        or download and::
        
         $ python setup.py install
        
        
        tests
        =======
        
        To run the tests::
        
          $ py.test
        
        
Keywords: dict,singledispatch,config
Platform: any
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
