Metadata-Version: 1.1
Name: slicerator
Version: 0.9.3
Summary: A lazy-loading, fancy-sliceable iterable.
Home-page: http://github.com/soft-matter/slicerator
Author: Daniel B. Allan
Author-email: daniel.b.allan@gmail.com
License: BSD
Description: Slicerator
        ==========
        
        a lazy-loading, fancy-slicable iterable
        
        Think of it like a generator that is "reusable" and has a length.
        
        [![build status](https://travis-ci.org/soft-matter/slicerator.png?branch=master)](https://travis-ci.org/soft-matter/slicerator)
        
        Installation
        ------------
        
        On any platform, use pip or conda.
        
        `pip install slicerator`
        
        or
        
        `conda install -c soft-matter slicerator`
        
        Example
        -------
        
        ```
        from slicerator import Slicerator
        
        class MyLazyLoader:
        
            def __getitem__(self, i):
                # If a specific item is requested, load it and return it.
                # Otherwise, return a lazy-loading Slicerator.
                if isinstance(i, int):
                    # load thing number i
                    return thing
                else:
                    return Slicerator(self, range(len(self)), len(self))[i]
        
            def __len__(self):
                # do stuff
                return number_of_things
        
            def __iter__(self):
                return iter(self[:])
        
        # Demo:
        >>> a = MyLazyLoader()
        >>> s1 = a[::2]  # no data is loaded yet
        >>> s2 = s1[1:]  # no data is loaded yet
        >>> some_data = s2[0]
        ```
        
Platform: Cross platform (Linux
Platform: Mac OSX
Platform: Windows)
Classifier: Development Status :: 4 - Beta
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.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
