{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/9"}],"enrichment":{"capability":"Slicerator wraps a class's `__getitem__` method to create a lazy-loading iterable that supports fancy indexing\u2014slices, integer lists, and boolean masks\u2014while deferring data loading until access.","skillfed_tags":["lazy-loading","iterator-wrapper"],"use_cases":["Wrapping a file reader or database query class to support array-like slicing without loading all records into memory.","Building lazy-loading image or video frame sequences that only decode frames when indexed.","Creating a filtered or transformed view of a dataset that defers computation until specific elements are accessed.","Chaining multiple slice operations on large datasets to avoid intermediate materialization."],"what_it_does":"Slicerator is a decorator-based wrapper that turns a class with `__getitem__` and `__len__` methods into a lazy-loading, reusable iterable. Unlike a generator, a Slicerator object can be indexed multiple times and has a known length; unlike a list, it defers data loading until you actually access an element. You decorate your data-loading class with `@Slicerator.from_class`, and the wrapper automatically handles slices (e.g., `obj[::2]`), integer lists, and boolean masks\u2014all without loading data until the final indexing operation.\n\nThe package is designed for scenarios where you want the convenience of array-like indexing and slicing but need to avoid loading everything into memory upfront. It chains slicing operations lazily, so `obj[::2][1:]` computes the combined slice without materializing intermediate results. With no runtime dependencies and a pure-Python implementation, it integrates easily into existing projects.","worth_installing":"Yes, if you need lazy-loading with fancy indexing and have a class-based data source. The low install friction, permissive license, and zero runtime dependencies make it a lightweight addition. However, the package is aging\u2014latest release 2022-04-07\u2014so verify it meets your Python version and use case before committing."},"id":"slicerator","links":{"html":"https://skillfed.io/packages/slicerator","md":"https://skillfed.io/packages/slicerator.md","pypi":"https://pypi.org/project/slicerator/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2022-04-07","license_spdx":null,"license_treatment":"permissive","name":"slicerator","python_support":"unspecified","summary":"A lazy-loading, fancy-sliceable iterable."},"popularity":{"monthly_downloads":337812,"position":7444,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.1.0"}
