pub struct BusMessage {
pub topic: Ustr,
pub payload_type: BusPayloadType,
pub payload: Bytes,
pub encoding: SerializationEncoding,
}Expand description
Represents a bus message including a topic and serialized payload.
Control messages (such as CLOSE) that carry no typed payload use an empty
BusPayloadType::Custom.
Fields§
§topic: UstrThe topic to publish the message on.
payload_type: BusPayloadTypeThe payload type, carried out-of-band so the receiver can dispatch the serialized payload without parsing the topic or inspecting the bytes.
payload: BytesThe serialized payload for the message.
encoding: SerializationEncodingThe encoding the payload is serialized with, so the receiver can decode it without
relying on its own configuration (mirrors a wire content-type).
Implementations§
Source§impl BusMessage
impl BusMessage
Sourcepub fn new(
topic: Ustr,
payload_type: BusPayloadType,
payload: Bytes,
encoding: SerializationEncoding,
) -> Self
pub fn new( topic: Ustr, payload_type: BusPayloadType, payload: Bytes, encoding: SerializationEncoding, ) -> Self
Creates a new BusMessage instance.
Sourcepub fn with_str_topic<T: AsRef<str>>(
topic: T,
payload_type: BusPayloadType,
payload: Bytes,
encoding: SerializationEncoding,
) -> Self
pub fn with_str_topic<T: AsRef<str>>( topic: T, payload_type: BusPayloadType, payload: Bytes, encoding: SerializationEncoding, ) -> Self
Creates a new BusMessage instance with a string-like topic.
This is a convenience constructor that converts any string-like type
(implementing AsRef<str>) into the required Ustr type.
Sourcepub fn new_close() -> Self
pub fn new_close() -> Self
Creates a new BusMessage instance with the CLOSE topic and empty payload.
Trait Implementations§
Source§impl Clone for BusMessage
impl Clone for BusMessage
Source§fn clone(&self) -> BusMessage
fn clone(&self) -> BusMessage
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BusMessage
impl Debug for BusMessage
impl DerefToPyAny for BusMessage
Source§impl<'de> Deserialize<'de> for BusMessage
impl<'de> Deserialize<'de> for BusMessage
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for BusMessage
impl Display for BusMessage
Source§impl<'a, 'py> FromPyObject<'a, 'py> for BusMessagewhere
Self: Clone,
impl<'a, 'py> FromPyObject<'a, 'py> for BusMessagewhere
Self: Clone,
Source§impl<'py> IntoPyObject<'py> for BusMessage
impl<'py> IntoPyObject<'py> for BusMessage
Source§type Target = BusMessage
type Target = BusMessage
Source§type Output = Bound<'py, <BusMessage as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <BusMessage as IntoPyObject<'py>>::Target>
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Source§impl PyClass for BusMessage
impl PyClass for BusMessage
Source§impl PyClassImpl for BusMessage
impl PyClassImpl for BusMessage
Source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
Source§const RAW_DOC: &'static CStr = /// Represents a bus message including a topic and serialized payload.
///
/// Control messages (such as `CLOSE`) that carry no typed payload use an empty
/// [`BusPayloadType::Custom`].
const RAW_DOC: &'static CStr = /// Represents a bus message including a topic and serialized payload. /// /// Control messages (such as `CLOSE`) that carry no typed payload use an empty /// [`BusPayloadType::Custom`].
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type Layout = <<BusMessage as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BusMessage>
type Layout = <<BusMessage as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BusMessage>
Source§type ThreadChecker = NoopThreadChecker
type ThreadChecker = NoopThreadChecker
type Inventory = Pyo3MethodsInventoryForBusMessage
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
§fn dict_offset() -> Option<PyObjectOffset>
fn dict_offset() -> Option<PyObjectOffset>
§fn weaklist_offset() -> Option<PyObjectOffset>
fn weaklist_offset() -> Option<PyObjectOffset>
Source§impl PyStubType for BusMessage
impl PyStubType for BusMessage
Source§fn type_output() -> TypeInfo
fn type_output() -> TypeInfo
§fn type_input() -> TypeInfo
fn type_input() -> TypeInfo
Source§impl PyTypeInfo for BusMessage
impl PyTypeInfo for BusMessage
Source§const NAME: &str = <Self as ::pyo3::PyClass>::NAME
const NAME: &str = <Self as ::pyo3::PyClass>::NAME
prefer using ::type_object(py).name() to get the correct runtime value
Source§const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
prefer using ::type_object(py).module() to get the correct runtime value
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
§fn is_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type or a subclass of this type.§fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type.Auto Trait Implementations§
impl !Freeze for BusMessage
impl RefUnwindSafe for BusMessage
impl Send for BusMessage
impl Sync for BusMessage
impl Unpin for BusMessage
impl UnsafeUnpin for BusMessage
impl UnwindSafe for BusMessage
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<'py, T> FromPyObjectOwned<'py> for Twhere
T: for<'a> FromPyObject<'a, 'py>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
self into an owned Python object, dropping type information.§fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
self into an owned Python object, dropping type information and unbinding it
from the 'py lifetime.§fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
self into a Python object. Read more§impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
§fn into_py_any_unwrap(self, py: Python<'py>) -> Py<PyAny>
fn into_py_any_unwrap(self, py: Python<'py>) -> Py<PyAny>
§impl<T> PyErrArguments for T
impl<T> PyErrArguments for T
§impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
§fn type_check(object: &Bound<'_, PyAny>) -> bool
fn type_check(object: &Bound<'_, PyAny>) -> bool
§fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
isinstance and issubclass function. Read more