Metadata-Version: 2.1
Name: uvarint
Version: 1.2.0
Summary: Unsigned variable-length integers
Home-page: https://github.com/matheusmoreira/uvarint.py
Author: Matheus Afonso Martins Moreira
Author-email: matheus.a.m.moreira@gmail.com
License: UNKNOWN
Description: # uvarint
        
        Unsigned variable-length integers. A type of [variable-length quantity].
        
        # Usage
        
            import uvarint
        
            buffer = uvarint.encode(16384)                  # b'\x80\x80\x01'
            integer, bytes_read = uvarint.decode(buffer)    # 16384
        
            big = uvarint.encode(2 ** 63)
            uvarint.decode(big)              # Raises OverflowError; decoder limited to 9 bytes by default
            uvarint.decode(big, limit=16)    # Success; use math.inf for unlimited decoding
        
            multiple  = uvarint.encode(100)
            multiple += uvarint.encode(200)
            multiple += uvarint.encode(300)
            uvarint.expect(3, multiple).integers    # [100, 200, 300]
            uvarint.cut(0, multiple)                # Slice(integers=[], rest=b'd\xc8\x01\xac\x02')
            uvarint.cut(1, multiple)                # Slice(integers=[100], rest=b'\xc8\x01\xac\x02')
            uvarint.cut(2, multiple)                # Slice(integers=[100, 200], rest=b'\xac\x02')
            uvarint.cut(3, multiple)                # Slice(integers=[100, 200, 300], rest=b'')
        
        # References
        
         - [Specification]
        
        # License
        
        This module is licensed under the MIT license.
        
        [variable-length quantity]: https://en.wikipedia.org/wiki/Variable-length_quantity
        [Specification]: https://github.com/multiformats/unsigned-varint
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.6
Description-Content-Type: text/markdown
