Trait capnp::traits::Owned

source ·
pub trait Owned: Introspect {
    type Reader<'a>: FromPointerReader<'a> + SetterInput<Self>;
    type Builder<'a>: FromPointerBuilder<'a>;
}
Expand description

A trait to encode relationships between readers and builders.

If Foo is a Cap’n Proto struct and Bar is a Rust-native struct, then foo::Reader<'a> is to foo::Owned as &'a Bar is to Bar, and foo::Builder<'a> is to foo::Owned as &'a mut Bar is to Bar. The relationship is formalized by an impl capnp::traits::Owned for foo::Owned. Because Cap’n Proto struct layout differs from Rust struct layout, a foo::Owned value cannot be used for anything interesting on its own; the foo::Owned type is useful nonetheless as a type parameter, e.g. for a generic container that owns a Cap’n Proto message of type T: capnp::traits::Owned.

Required Associated Types§

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Owned for capnp::any_pointer::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::any_pointer_list::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::data::Owned

§

type Reader<'a> = &'a [u8]

§

type Builder<'a> = &'a mut [u8]

source§

impl Owned for capnp::data_list::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::annotation::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::brand::binding::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::brand::scope::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::brand::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::capnp_version::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::code_generator_request::requested_file::import::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::code_generator_request::requested_file::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::code_generator_request::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::enumerant::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::field::group::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::field::ordinal::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::field::slot::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::field::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::method::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::annotation::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::const_::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::enum_::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::interface::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::nested_node::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::parameter::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::source_info::member::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::source_info::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::node::struct_::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::superclass::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::any_pointer::implicit_method_parameter::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::any_pointer::parameter::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::any_pointer::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::any_pointer::unconstrained::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::enum_::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::interface::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::list::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::type_::struct_::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::schema_capnp::value::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::text::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl Owned for capnp::text_list::Owned

§

type Reader<'a> = Reader<'a>

§

type Builder<'a> = Builder<'a>

source§

impl<T> Owned for capnp::capability_list::Owned<T>
where T: FromClientHook,

§

type Reader<'a> = Reader<'a, T>

§

type Builder<'a> = Builder<'a, T>

source§

impl<T> Owned for capnp::enum_list::Owned<T>
where T: TryFrom<u16, Error = NotInSchema> + Introspect,

§

type Reader<'a> = Reader<'a, T>

§

type Builder<'a> = Builder<'a, T>

source§

impl<T> Owned for capnp::list_list::Owned<T>
where T: Owned,

§

type Reader<'a> = Reader<'a, T>

§

type Builder<'a> = Builder<'a, T>

source§

impl<T> Owned for capnp::primitive_list::Owned<T>

§

type Reader<'a> = Reader<'a, T>

§

type Builder<'a> = Builder<'a, T>

source§

impl<T> Owned for capnp::struct_list::Owned<T>
where T: OwnedStruct,

§

type Reader<'a> = Reader<'a, T>

§

type Builder<'a> = Builder<'a, T>