Struct cramjam::io::RustyBuffer [−][src]
pub struct RustyBuffer { /* fields omitted */ }
Expand description
A native Rust file-like object. Reading and writing takes place through the Rust implementation, allowing access to the underlying bytes in Python.
Python Example
>>> from cramjam import Buffer
>>> buf = Buffer(b"bytes")
>>> buf.read()
b'bytes'
Implementations
impl RustyBuffer
[src]
impl RustyBuffer
[src]A Buffer object, similar to cramjam.File only the bytes are held in-memory
Example
from cramjam import Buffer
buf = Buffer(b'start bytes')
buf.read(5)
b'start'
pub fn __init__(data: Option<BytesType<'_>>) -> PyResult<Self>
[src]
pub fn __init__(data: Option<BytesType<'_>>) -> PyResult<Self>
[src]Instantiate the object, optionally with any supported bytes-like object in BytesType
pub fn write(&mut self, input: BytesType<'_>) -> PyResult<usize>
[src]
pub fn write(&mut self, input: BytesType<'_>) -> PyResult<usize>
[src]Write some bytes to the buffer, where input data can be anything in BytesType
pub fn read<'a>(
&mut self,
py: Python<'a>,
n_bytes: Option<usize>
) -> PyResult<&'a PyBytes>
[src]
pub fn read<'a>(
&mut self,
py: Python<'a>,
n_bytes: Option<usize>
) -> PyResult<&'a PyBytes>
[src]Read from the buffer in its current position, returns bytes; optionally specify number of bytes to read.
pub fn readinto(&mut self, output: BytesType<'_>) -> PyResult<usize>
[src]
pub fn readinto(&mut self, output: BytesType<'_>) -> PyResult<usize>
[src]Read from the buffer in its current position, into a BytesType object.
pub fn seek(
&mut self,
position: isize,
whence: Option<usize>
) -> PyResult<usize>
[src]
pub fn seek(
&mut self,
position: isize,
whence: Option<usize>
) -> PyResult<usize>
[src]Seek to a position within the buffer. whence follows the same values as IOBase.seek where:
0: from start of the stream
1: from current stream position
2: from end of the stream
pub fn seekable(&self) -> bool
[src]
pub fn seekable(&self) -> bool
[src]Whether the buffer is seekable; here just for compatibility, it always returns True.
Trait Implementations
impl Default for RustyBuffer
[src]
impl Default for RustyBuffer
[src]fn default() -> RustyBufferⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]
fn default() -> RustyBufferⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]Returns the “default value” for a type. Read more
impl<'a> ExtractExt<'a> for &'a RustyBuffer
[src]
impl<'a> ExtractExt<'a> for &'a RustyBuffer
[src]type Target = PyRef<'a, RustyBuffer>
impl<'a> ExtractExt<'a> for &'a mut RustyBuffer
[src]
impl<'a> ExtractExt<'a> for &'a mut RustyBuffer
[src]type Target = PyRefMut<'a, RustyBuffer>
impl HasMethodsInventory for RustyBuffer
[src]
impl HasMethodsInventory for RustyBuffer
[src]type Methods = Pyo3MethodsInventoryForRustyBuffer
impl IntoPy<Py<PyAny>> for RustyBuffer
[src]
impl IntoPy<Py<PyAny>> for RustyBuffer
[src]impl<'p> PyBufferGetBufferProtocol<'p> for RustyBuffer
[src]
impl<'p> PyBufferGetBufferProtocol<'p> for RustyBuffer
[src]impl<'p> PyBufferProtocol<'p> for RustyBuffer
[src]
impl<'p> PyBufferProtocol<'p> for RustyBuffer
[src]fn bf_getbuffer(
slf: PyRefMut<'_, Self>,
view: *mut Py_buffer,
flags: c_int
) -> <RustyBuffer as PyBufferGetBufferProtocol<'p>>::ResultⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]
slf: PyRefMut<'_, Self>,
view: *mut Py_buffer,
flags: c_int
) -> <RustyBuffer as PyBufferGetBufferProtocol<'p>>::Resultⓘ
Notable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
fn bf_releasebuffer(
_slf: PyRefMut<'_, Self>,
_view: *mut Py_buffer
) -> <RustyBuffer as PyBufferReleaseBufferProtocol<'p>>::ResultⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]
_slf: PyRefMut<'_, Self>,
_view: *mut Py_buffer
) -> <RustyBuffer as PyBufferReleaseBufferProtocol<'p>>::Resultⓘ
Notable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
impl<'p> PyBufferReleaseBufferProtocol<'p> for RustyBuffer
[src]
impl<'p> PyBufferReleaseBufferProtocol<'p> for RustyBuffer
[src]impl PyClass for RustyBuffer
[src]
impl PyClass for RustyBuffer
[src]type Dict = PyClassDummySlot
type Dict = PyClassDummySlot
Specify this class has #[pyclass(dict)]
or not.
type WeakRef = PyClassDummySlot
type WeakRef = PyClassDummySlot
Specify this class has #[pyclass(weakref)]
or not.
type BaseNativeType = PyAny
type BaseNativeType = PyAny
The closest native ancestor. This is PyAny
by default, and when you declare
#[pyclass(extends=PyDict)]
, it’s PyDict
. Read more
impl PyClassAlloc for RustyBuffer
[src]
impl PyClassAlloc for RustyBuffer
[src]impl PyClassSend for RustyBuffer
[src]
impl PyClassSend for RustyBuffer
[src]type ThreadChecker = ThreadCheckerStub<RustyBuffer>
impl<'p> PyObjectBoolProtocol<'p> for RustyBuffer
[src]
impl<'p> PyObjectBoolProtocol<'p> for RustyBuffer
[src]impl<'p> PyObjectProtocol<'p> for RustyBuffer
[src]
impl<'p> PyObjectProtocol<'p> for RustyBuffer
[src]fn __repr__(&'p self) -> <RustyBuffer as PyObjectReprProtocol<'p>>::ResultⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]
Notable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
fn __bool__(&'p self) -> <RustyBuffer as PyObjectBoolProtocol<'p>>::ResultⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]
Notable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
fn __getattr__(&'p self, name: Self::Name) -> Self::Result where
Self: PyObjectGetAttrProtocol<'p>,
[src]
Self: PyObjectGetAttrProtocol<'p>,
fn __setattr__(
&'p mut self,
name: Self::Name,
value: Self::Value
) -> Self::Result where
Self: PyObjectSetAttrProtocol<'p>,
[src]
&'p mut self,
name: Self::Name,
value: Self::Value
) -> Self::Result where
Self: PyObjectSetAttrProtocol<'p>,
fn __delattr__(&'p mut self, name: Self::Name) -> Self::Result where
Self: PyObjectDelAttrProtocol<'p>,
[src]
Self: PyObjectDelAttrProtocol<'p>,
fn __str__(&'p self) -> Self::Result where
Self: PyObjectStrProtocol<'p>,
[src]
Self: PyObjectStrProtocol<'p>,
fn __format__(&'p self, format_spec: Self::Format) -> Self::Result where
Self: PyObjectFormatProtocol<'p>,
[src]
Self: PyObjectFormatProtocol<'p>,
fn __hash__(&'p self) -> Self::Result where
Self: PyObjectHashProtocol<'p>,
[src]
Self: PyObjectHashProtocol<'p>,
fn __bytes__(&'p self) -> Self::Result where
Self: PyObjectBytesProtocol<'p>,
[src]
Self: PyObjectBytesProtocol<'p>,
fn __richcmp__(&'p self, other: Self::Other, op: CompareOp) -> Self::Result where
Self: PyObjectRichcmpProtocol<'p>,
[src]
Self: PyObjectRichcmpProtocol<'p>,
impl<'p> PyObjectReprProtocol<'p> for RustyBuffer
[src]
impl<'p> PyObjectReprProtocol<'p> for RustyBuffer
[src]impl PyProtoMethods for RustyBuffer
[src]
impl PyProtoMethods for RustyBuffer
[src]fn for_each_proto_slot<Visitor: FnMut(PyType_Slot)>(visitor: Visitor)
[src]
fn get_buffer() -> Option<&'static PyBufferProcs>
[src]
impl<'p> PySequenceContainsProtocol<'p> for RustyBuffer
[src]
impl<'p> PySequenceContainsProtocol<'p> for RustyBuffer
[src]impl<'p> PySequenceLenProtocol<'p> for RustyBuffer
[src]
impl<'p> PySequenceLenProtocol<'p> for RustyBuffer
[src]impl<'p> PySequenceProtocol<'p> for RustyBuffer
[src]
impl<'p> PySequenceProtocol<'p> for RustyBuffer
[src]fn __len__(&'p self) -> <RustyBuffer as PySequenceLenProtocol<'p>>::ResultⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]
Notable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
fn __contains__(
&'p self,
x: <RustyBuffer as PySequenceContainsProtocol<'p>>::Item
) -> <RustyBuffer as PySequenceContainsProtocol<'p>>::ResultⓘNotable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
[src]
&'p self,
x: <RustyBuffer as PySequenceContainsProtocol<'p>>::Item
) -> <RustyBuffer as PySequenceContainsProtocol<'p>>::Resultⓘ
Notable traits for RustyBuffer
impl Read for RustyBufferimpl Write for RustyBuffer
fn __getitem__(&'p self, idx: Self::Index) -> Self::Result where
Self: PySequenceGetItemProtocol<'p>,
[src]
Self: PySequenceGetItemProtocol<'p>,
fn __setitem__(
&'p mut self,
idx: Self::Index,
value: Self::Value
) -> Self::Result where
Self: PySequenceSetItemProtocol<'p>,
[src]
&'p mut self,
idx: Self::Index,
value: Self::Value
) -> Self::Result where
Self: PySequenceSetItemProtocol<'p>,
fn __delitem__(&'p mut self, idx: Self::Index) -> Self::Result where
Self: PySequenceDelItemProtocol<'p>,
[src]
Self: PySequenceDelItemProtocol<'p>,
fn __concat__(&'p self, other: Self::Other) -> Self::Result where
Self: PySequenceConcatProtocol<'p>,
[src]
Self: PySequenceConcatProtocol<'p>,
fn __repeat__(&'p self, count: Self::Index) -> Self::Result where
Self: PySequenceRepeatProtocol<'p>,
[src]
Self: PySequenceRepeatProtocol<'p>,
fn __inplace_concat__(&'p mut self, other: Self::Other) -> Self::Result where
Self: PySequenceInplaceConcatProtocol<'p>,
[src]
Self: PySequenceInplaceConcatProtocol<'p>,
fn __inplace_repeat__(&'p mut self, count: Self::Index) -> Self::Result where
Self: PySequenceInplaceRepeatProtocol<'p>,
[src]
Self: PySequenceInplaceRepeatProtocol<'p>,
impl PyTypeInfo for RustyBuffer
[src]
impl PyTypeInfo for RustyBuffer
[src]type Type = RustyBuffer
type Type = RustyBuffer
Type of objects to store in PyObject struct
type BaseLayout = PyCellBase<PyAny>
type BaseLayout = PyCellBase<PyAny>
Layout of Basetype.
type Initializer = PyClassInitializer<Self>
type Initializer = PyClassInitializer<Self>
Initializer for layout
type AsRefTarget = PyCell<Self>
type AsRefTarget = PyCell<Self>
Utility type to make Py::as_ref work
const DESCRIPTION: &'static str
[src]
const DESCRIPTION: &'static str
[src]Class doc string
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
[src]
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
[src]PyTypeObject instance for this type.
fn is_type_of(object: &PyAny) -> bool
[src]
fn is_type_of(object: &PyAny) -> bool
[src]Checks if object
is an instance of this type or a subclass of this type.
fn is_exact_type_of(object: &PyAny) -> bool
[src]
fn is_exact_type_of(object: &PyAny) -> bool
[src]Checks if object
is an instance of this type.
impl Read for RustyBuffer
[src]
impl Read for RustyBuffer
[src]fn read(&mut self, buf: &mut [u8]) -> Result<usize>
[src]
fn read(&mut self, buf: &mut [u8]) -> Result<usize>
[src]Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
1.36.0[src]
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
1.36.0[src]Like read
, except that it reads into a slice of buffers. Read more
fn is_read_vectored(&self) -> bool
[src]
fn is_read_vectored(&self) -> bool
[src]can_vector
)Determines if this Read
er has an efficient read_vectored
implementation. Read more
unsafe fn initializer(&self) -> Initializer
[src]
unsafe fn initializer(&self) -> Initializer
[src]read_initializer
)Determines if this Read
er can work with buffers of uninitialized
memory. Read more
fn read_to_end(&mut self, buf: &mut Vec<u8, Global>) -> Result<usize, Error>
1.0.0[src]
fn read_to_end(&mut self, buf: &mut Vec<u8, Global>) -> Result<usize, Error>
1.0.0[src]Read all bytes until EOF in this source, placing them into buf
. Read more
fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
1.0.0[src]
fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
1.0.0[src]Read all bytes until EOF in this source, appending them to buf
. Read more
fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
1.6.0[src]
fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
1.6.0[src]Read the exact number of bytes required to fill buf
. Read more
fn by_ref(&mut self) -> &mut Self
1.0.0[src]
fn by_ref(&mut self) -> &mut Self
1.0.0[src]Creates a “by reference” adaptor for this instance of Read
. Read more
impl Seek for RustyBuffer
[src]
impl Seek for RustyBuffer
[src]fn seek(&mut self, pos: SeekFrom) -> Result<u64>
[src]
fn seek(&mut self, pos: SeekFrom) -> Result<u64>
[src]Seek to an offset, in bytes, in a stream. Read more
fn rewind(&mut self) -> Result<(), Error>
[src]
fn rewind(&mut self) -> Result<(), Error>
[src]seek_rewind
)Rewind to the beginning of a stream. Read more
impl Write for RustyBuffer
[src]
impl Write for RustyBuffer
[src]fn write(&mut self, buf: &[u8]) -> Result<usize>
[src]
fn write(&mut self, buf: &[u8]) -> Result<usize>
[src]Write a buffer into this writer, returning how many bytes were written. Read more
fn flush(&mut self) -> Result<()>
[src]
fn flush(&mut self) -> Result<()>
[src]Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
fn is_write_vectored(&self) -> bool
[src]
fn is_write_vectored(&self) -> bool
[src]can_vector
)Determines if this Write
r has an efficient write_vectored
implementation. Read more
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0[src]
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0[src]Attempts to write an entire buffer into this writer. Read more
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
[src]
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
[src]write_all_vectored
)Attempts to write multiple buffers into this writer. Read more
Auto Trait Implementations
impl RefUnwindSafe for RustyBuffer
impl Send for RustyBuffer
impl Sync for RustyBuffer
impl Unpin for RustyBuffer
impl UnwindSafe for RustyBuffer
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> PyTypeObject for T where
T: PyTypeInfo,
[src]
impl<T> PyTypeObject for T where
T: PyTypeInfo,
[src]pub fn type_object(py: Python<'_>) -> &PyType
[src]
pub fn type_object(py: Python<'_>) -> &PyType
[src]Returns the safe abstraction over the type object.