class_docstr: An exposure tracked buffer.
  
  Parameters
  ----------
  owner
      The owning exposure tracked buffer this refers to.
  offset
      The offset relative to the start memory of owner (in bytes).
  size
      The size of the slice (in bytes)
class_docstr_tok: ["An","exposure","tracked","buffer",".","Parameters","--","--","--","--","--","owner","The","owning","exposure","tracked","buffer","this","refers","to",".","offset","The","offset","relative","to","the","start","memory","of","owner","(","in","bytes",")",".","size","The","size","of","the","slice","(","in","bytes",")"]
code: def __cuda_array_interface__(self) -> Mapping:
      if cudf.get_option("copy_on_write"):
          self.make_single_owner_inplace()
      return super().__cuda_array_interface__
  
file_path: cudf/python/cudf/cudf/core/buffer/exposure_tracked_buffer.py
imports: from __future__ import annotations
  from typing import Literal, Mapping, Optional
  from typing_extensions import Self
  import cudf
  from cudf.core.buffer.buffer import Buffer, BufferOwner
label_desc: Use image node_id 5 for calling the ExposureTrackedBuffer obj's underlying member method code with example usage: obj.__cuda_array_interface__() and returns: super