"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import sys

import google.protobuf.descriptor
import google.protobuf.message

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class AllocationDescription(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REQUESTED_BYTES_FIELD_NUMBER: builtins.int
    ALLOCATED_BYTES_FIELD_NUMBER: builtins.int
    ALLOCATOR_NAME_FIELD_NUMBER: builtins.int
    ALLOCATION_ID_FIELD_NUMBER: builtins.int
    HAS_SINGLE_REFERENCE_FIELD_NUMBER: builtins.int
    PTR_FIELD_NUMBER: builtins.int
    requested_bytes: builtins.int
    """Total number of bytes requested"""
    allocated_bytes: builtins.int
    """Total number of bytes allocated if known"""
    allocator_name: builtins.str
    """Name of the allocator used"""
    allocation_id: builtins.int
    """Identifier of the allocated buffer if known"""
    has_single_reference: builtins.bool
    """Set if this tensor only has one remaining reference"""
    ptr: builtins.int
    """Address of the allocation."""
    def __init__(
        self,
        *,
        requested_bytes: builtins.int | None = ...,
        allocated_bytes: builtins.int | None = ...,
        allocator_name: builtins.str | None = ...,
        allocation_id: builtins.int | None = ...,
        has_single_reference: builtins.bool | None = ...,
        ptr: builtins.int | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allocated_bytes", b"allocated_bytes", "allocation_id", b"allocation_id", "allocator_name", b"allocator_name", "has_single_reference", b"has_single_reference", "ptr", b"ptr", "requested_bytes", b"requested_bytes"]) -> None: ...

global___AllocationDescription = AllocationDescription
