pub trait TypedCompositeShape: CompositeShape {
type PartShape: Shape + ?Sized;
type PartNormalConstraints: NormalConstraints + ?Sized;
// Required methods
fn map_typed_part_at<T>(
&self,
shape_id: u32,
f: impl FnMut(Option<&Pose2>, &Self::PartShape, Option<&Self::PartNormalConstraints>) -> T,
) -> Option<T>;
fn map_untyped_part_at<T>(
&self,
shape_id: u32,
f: impl FnMut(Option<&Pose2>, &(dyn Shape + 'static), Option<&(dyn NormalConstraints + 'static)>) -> T,
) -> Option<T>;
}Required Associated Types§
type PartShape: Shape + ?Sized
type PartNormalConstraints: NormalConstraints + ?Sized
Required Methods§
fn map_typed_part_at<T>( &self, shape_id: u32, f: impl FnMut(Option<&Pose2>, &Self::PartShape, Option<&Self::PartNormalConstraints>) -> T, ) -> Option<T>
fn map_untyped_part_at<T>( &self, shape_id: u32, f: impl FnMut(Option<&Pose2>, &(dyn Shape + 'static), Option<&(dyn NormalConstraints + 'static)>) -> T, ) -> Option<T>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementors§
Source§impl TypedCompositeShape for Compound
impl TypedCompositeShape for Compound
type PartShape = dyn Shape
type PartNormalConstraints = CompoundPseudoNormals
Source§impl TypedCompositeShape for Polyline
impl TypedCompositeShape for Polyline
Source§impl TypedCompositeShape for QueryPipeline<'_>
impl TypedCompositeShape for QueryPipeline<'_>
Source§impl TypedCompositeShape for TriMesh
impl TypedCompositeShape for TriMesh
Source§impl TypedCompositeShape for dyn CompositeShape + '_
Available on crate feature alloc only.
impl TypedCompositeShape for dyn CompositeShape + '_
Available on crate feature
alloc only.type PartShape = dyn Shape
type PartNormalConstraints = dyn NormalConstraints
Source§impl TypedCompositeShape for dyn CompositeShape + Sync + '_
Available on crate feature alloc only.
impl TypedCompositeShape for dyn CompositeShape + Sync + '_
Available on crate feature
alloc only.