معرفی شرکت ها


cbytesparse-0.0.5


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Library to handle sparse bytes within a virtual memory space
ویژگی مقدار
سیستم عامل OS Independent
نام فایل cbytesparse-0.0.5
نام cbytesparse
نسخه کتابخانه 0.0.5
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Andrea Zoppi
ایمیل نویسنده texzk@email.it
آدرس صفحه اصلی https://github.com/TexZK/cbytesparse
آدرس اینترنتی https://pypi.org/project/cbytesparse/
مجوز BSD 2-Clause License
******** Overview ******** Library to handle sparse bytes within a virtual memory space. * Free software: BSD 2-Clause License Objectives ========== This library aims to provide utilities to work with a `virtual memory`, which constsis in a virtual addressing space where sparse `chunks` of data can be stored. In order to be easy to use, its interface should be close to that of a ``bytearray``, which is the closest pythonic way to store dynamic data. The main downside of a ``bytearray`` is that it requires a contiguous data allocation starting from address 0. This is not good when sparse data have to be stored, such as when emulating the addressing space of a generic microcontroller. The main idea is to provide a ``bytearray``-like class with the possibility to internally hold the sparse `blocks` of data. A `block` is ideally a tuple ``(start, data)`` where `start` is the start address and `data` is the container of data items (e.g. ``bytearray``). The length of the block is ``len(data)``. Those blocks are usually not overlapping nor contiguous, and sorted by start address. Python implementation ===================== This library is the Cython complement to the Python implementation provided by the ``bytesparse`` Python package. Please refer to its own documentation for more details. Cython implementation ===================== The library provides an experimental `Cython` implementation. It tries to mimic the same algorithms of the Python implementation, while exploiting the speedup of compiled `C` code. Beware that the Cython implementation is meant to be potentially faster than the pure Python one, but there might be even faster `ad-hoc` implementations of virtual memory highly optimized for the underlying hardware. The addressing space is limited to that of an ``uint_fast64_t`` (typically 32-bit or 64-bit as per the hosting machine), so it is not possible to have an infinite addressing space, nor negative addresses. To keep the implementation code simple enough, the highest address (e.g. ``0xFFFFFFFF`` on a 32-bit machine) is reserved. Block data chunks cannot be greater than the maximum ``ssize_t`` value (typically half of the addressing space). The Cython implementation is optional, and potentially useful only when the Python implementation seems too slow for the user's algorithms, within the limits stated above. If in doubt about using the Cython implementation, just stick with the Python one, which is much easier to integrate and debug. More details can be found within ``cbytesparse.c``. Documentation ============= For the full documentation, please refer to: https://cbytesparse.readthedocs.io/ Installation ============ From PyPI (might not be the latest version found on *github*): .. code-block:: sh $ pip install cbytesparse From the source code root directory: .. code-block:: sh $ pip install . Development =========== To run the all the tests: .. code-block:: sh $ pip install tox $ tox To regenerate the Cython files manually, run the following commands: .. code-block:: sh $ python scripts/cython_build_src.py $ python scripts/cython_build_tests.py or alternatively: .. code-block:: sh $ tox -e cythonize Changelog ========= 0.0.5 (2022-02-22) ------------------ * Following the ``bytesparse`` Python package, version ``0.0.5``. * Added ``bytesparse`` class, closer to ``bytearray`` than ``Memory``. * Added registration to the abstract base classes. * Added missing abstract and ported methods. * Added cut feature. * Added more helper methods. * Fixed values iteration. * Improved extraction performance. * Improved testing. 0.0.4 (2022-01-09) ------------------ * Following the ``bytesparse`` Python package, version ``0.0.4``. * Refactored current implementation as the ``c`` sub-module. * Removed experimental backup feature. * Added dedicated methods to backup/restore mutated state. * Fixed some write/insert bugs. * Fixed some trim/bound bugs. * Methods sorted by name. * Removed useless functions. 0.0.2 (2022-01-03) ------------------ * Forced extension compilation. * Using explicit factory methods instead of constructor arguments. * Added block collapsing helper function. * Minor fixes. * Improved test suite. 0.0.1 (2021-12-27) ------------------ * First release on PyPI.


نحوه نصب


نصب پکیج whl cbytesparse-0.0.5:

    pip install cbytesparse-0.0.5.whl


نصب پکیج tar.gz cbytesparse-0.0.5:

    pip install cbytesparse-0.0.5.tar.gz