mirror of
https://github.com/pybricks/pybricks-api.git
synced 2026-09-12 01:24:17 +00:00
ustruct: Document modules.
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Copyright (c) 2021 The Pybricks Authors
|
||||
#
|
||||
# Portions of documentation copied from:
|
||||
# https://raw.githubusercontent.com/micropython/micropython/1e6d18c915ccea0b6a19ffec9710d33dd7e5f866/docs/library/ustruct.rst
|
||||
# Copyright (c) 2014-2021, Damien P. George, Paul Sokolovsky, and contributors
|
||||
|
||||
"""
|
||||
This module provides functions to convert between Python values and C-like
|
||||
data structs.
|
||||
"""
|
||||
|
||||
from typing import Union, Tuple
|
||||
|
||||
|
||||
def calcsize(format: str) -> int:
|
||||
"""
|
||||
Gets the data size corresponding to a format string
|
||||
|
||||
Arguments:
|
||||
format (str): Data format string.
|
||||
|
||||
Returns:
|
||||
The number of bytes needed to represent this format.
|
||||
"""
|
||||
|
||||
|
||||
def pack(format: str, *values) -> bytes:
|
||||
"""
|
||||
pack(format, value1, value2, ...)
|
||||
|
||||
Packs the values using the given format.
|
||||
|
||||
Arguments:
|
||||
format (str): Data format string.
|
||||
|
||||
Returns:
|
||||
The data encoded as bytes.
|
||||
"""
|
||||
|
||||
|
||||
def pack_into(format: str, buffer: bytearray, offset: int, *values) -> bytes:
|
||||
"""
|
||||
pack_into(format, buffer, offset, value1, value2, ...)
|
||||
|
||||
Encode the values using the given format and write them to a given buffer.
|
||||
|
||||
Arguments:
|
||||
format (str): Data format string.
|
||||
buffer (bytearray): Buffer to store the encoded data.
|
||||
offset (int): Offset from the start of the buffer. Use a negative value
|
||||
to count from the end of the buffer.
|
||||
"""
|
||||
|
||||
|
||||
def unpack(format: str, data: Union[bytes, bytearray]) -> Tuple:
|
||||
"""
|
||||
unpack(format, data) -> Tuple
|
||||
|
||||
Decodes the binary data using the given format.
|
||||
|
||||
Arguments:
|
||||
format (str): Data format string.
|
||||
data (bytes or bytearray): Data to unpack.
|
||||
|
||||
Returns:
|
||||
The decoded data as a tuple of values.
|
||||
"""
|
||||
|
||||
|
||||
def unpack_from(format: str, data: Union[bytes, bytearray], offset: int) -> Tuple:
|
||||
"""
|
||||
unpack_from(format, data, offset) -> Tuple
|
||||
|
||||
Decodes binary data from a buffer using the given format.
|
||||
|
||||
Arguments:
|
||||
format (str): Data format string.
|
||||
data (bytes or bytearray): Data buffer to unpack.
|
||||
offset (int): Offset from the start of the data. Use a negative value
|
||||
to count from the end of the data.
|
||||
|
||||
Returns:
|
||||
The decoded data as a tuple of values.
|
||||
"""
|
||||
Reference in New Issue
Block a user