pub trait Visit {
// Required method
fn visit(
&mut self,
name: &str,
visitor: &mut Visitor,
) -> Result<(), VisitError>;
}Expand description
Trait of types that can be read from a Visitor or written to a Visitor.
§Code Generation
Procedural macro could be used to generate trivial implementations for this trait, which covers 99% of the cases. Consider the following example:
use fyrox_core::visitor::prelude::*;
#[derive(Visit, Default)]
struct MyType {
field_a: u32,
field_b: String
}The generated code will be something like this:
use fyrox_core::visitor::prelude::*;
struct MyType {
field_a: u32,
field_b: String
}
impl Visit for MyType {
fn visit(&mut self, name: &str, visitor: &mut Visitor) -> VisitResult {
let mut region = visitor.enter_region(name)?;
self.field_a.visit("FieldA", &mut region)?;
self.field_b.visit("FieldB", &mut region)?;
Ok(())
}
}§Type Attributes
#[visit(optional)]- marks all the fields of the type as optional and suppresses any errors on serialization and deserialization. In the generated code, all the fields will be visited like thislet _ = self.field_a.visit("FieldA", &mut region);#[visit(pre_visit_method = "function_name")]- name of a function, that will be called before the generated body.#[visit(post_visit_method = "function_name")]- name of a function, that will be called after the generated body.
§Field Attributes
#[visit(skip)]- disables serialization and deserialization of the field.#[visit(rename = "new_name")]- overrides the name of the field withnew_name. In the generated code, all the fields will be visited like thisself.field_a.visit("new_name", &mut region)?;#[visit(optional)]- marks the field as optional and suppresses any errors on serialization and deserialization. In the generated code, all the fields will be visited like thislet _ = self.field_a.visit("FieldA", &mut region);
Required Methods§
Sourcefn visit(&mut self, name: &str, visitor: &mut Visitor) -> Result<(), VisitError>
fn visit(&mut self, name: &str, visitor: &mut Visitor) -> Result<(), VisitError>
Read or write this value, depending on whether Visitor::is_reading() is true or false.
§In Write Mode
The given name is a key to identify where this value will be stored in the visitor. Whether this name indicates a field or a region is determined by the value being visited. No two regions can exist with the same name as children of a single node, and no two fields can exist with the same name within a single node, but a region may share the same name as a field. If a name clash occurs, then an error is returned. Otherwise the value is written into the Visitor data at the given name.
§In Read Mode
The given name is a key to identify where this value should be found the visitor. Whether the name indicates a field or a region is determined by the the value being visited. If the field or region is not found with the given name then an error is returned. Otherwise the value being visited will be mutated to match the data in the visitor.
§Buiding a Complex Value out of Multiple Fields
If representing this value requires more than one field, Visitor::enter_region can be used to create a new node within the visitor with the given name, and the fields of this value can then read from or write to that node using the returned Visitor without risk of name clashes.
See the documentation for the Visit derive macro for examples of how to implement Visit for some simple types.
§Abnormal Implementations
Types with special needs may choose to read and write in unusual ways. In addition to choosing whether they will store their data in a region or a field, a value might choose to do neither. A value may also choose to attempt to read its data in multiple ways so as to remain backwards-compatible with older versions where the format of data storage may be different.
See crate::variable::InheritableVariable::visit for an example of an abnormal implementation of Visit.
Implementations on Foreign Types§
Source§impl Visit for GenericBuffer
impl Visit for GenericBuffer
Source§impl Visit for StreamingBuffer
impl Visit for StreamingBuffer
Source§impl Visit for SoundContext
impl Visit for SoundContext
Source§impl Visit for SoundSource
impl Visit for SoundSource
Implementors§
impl Visit for ResourceKind
impl Visit for InterpolationMode
impl Visit for TrackValueKind
impl Visit for Parameter
impl Visit for PoseWeight
impl Visit for Event
impl Visit for fyrox_impl::generic_animation::spritesheet::Status
impl Visit for ValueBinding
impl Visit for ValueType
impl Visit for BlendFactor
impl Visit for BlendMode
impl Visit for CompareFunc
impl Visit for CullFace
impl Visit for PolygonFace
impl Visit for PolygonFillMode
impl Visit for StencilAction
impl Visit for SamplerKind
impl Visit for ShaderPropertyKind
impl Visit for EventKind
impl Visit for Brush
impl Visit for TileContentDescriptor
impl Visit for TileContent
impl Visit for HorizontalAlignment
impl Visit for Orientation
impl Visit for RenderMode
impl Visit for VerticalAlignment
impl Visit for FileSelectorMode
impl Visit for WrapMode
impl Visit for SizeMode
impl Visit for PropertyEditorInstance
impl Visit for HotKey
impl Visit for KeyBinding
impl Visit for MenuItemContent
impl Visit for MenuItemPlacement
impl Visit for ButtonState
impl Visit for CursorIcon
impl Visit for Force
impl Visit for KeyCode
impl Visit for MouseButton
impl Visit for TouchPhase
impl Visit for MessageBoxButtons
impl Visit for StretchMode
impl Visit for Placement
impl Visit for StyleProperty
impl Visit for TextCommitMode
impl Visit for Primitive
impl Visit for GripKind
impl Visit for WindowSizeState
impl Visit for MaterialProperty
impl Visit for MaterialResourceBinding
impl Visit for SamplerFallback
impl Visit for ShaderResourceKind
impl Visit for MaterialSearchOptions
impl Visit for TextureKind
impl Visit for TextureMagnificationFilter
impl Visit for TextureMinificationFilter
impl Visit for TexturePixelKind
impl Visit for TextureWrapMode
impl Visit for PropertyValue
impl Visit for Exposure
impl Visit for Projection
impl Visit for fyrox_impl::scene::collider::ColliderShape
impl Visit for fyrox_impl::scene::dim2::collider::ColliderShape
impl Visit for fyrox_impl::scene::dim2::joint::JointParams
impl Visit for EnvironmentLightingSource
impl Visit for CoefficientCombineRule
impl Visit for fyrox_impl::scene::joint::JointParams
impl Visit for FrustumSplitOptions
impl Visit for VertexAttributeDataType
impl Visit for VertexAttributeUsage
impl Visit for BatchingMode
impl Visit for RenderPath
impl Visit for Emitter
impl Visit for CoordinateSystem
impl Visit for UpdateMode
impl Visit for RigidBodyMassPropertiesType
impl Visit for RigidBodyType
impl Visit for DistanceModel
impl Visit for Effect
impl Visit for Renderer
impl Visit for SoundBuffer
impl Visit for fyrox_impl::scene::sound::Status
impl Visit for ResourceTilePosition
impl Visit for TileBook
impl Visit for TileCollider
impl Visit for TilePaletteStage
impl Visit for NamableValue
impl Visit for TileSetPageSource
impl Visit for TileSetPropertyOptionValue
impl Visit for TileSetPropertyType
impl Visit for TileSetPropertyValue
impl Visit for TileSetPropertyValueElement
impl Visit for CompositeNodeKind
impl Visit for MessageKind
impl Visit for CurveKeyKind
impl Visit for ResourceHeader
impl Visit for UntypedResource
impl Visit for TrackDataContainer
impl Visit for ParameterDefinition
impl Visit for ParameterContainer
impl Visit for Signal
impl Visit for AnimationSignal
impl Visit for AnimationTracksData
impl Visit for Track
impl Visit for ShaderProperty
impl Visit for BlendEquation
impl Visit for BlendFunc
impl Visit for BlendParameters
impl Visit for ColorMask
impl Visit for DrawParameters
impl Visit for ScissorBox
impl Visit for StencilFunc
impl Visit for StencilOp
impl Visit for AbsmEventProvider
impl Visit for fyrox_impl::gui::absm::AnimationBlendingStateMachine
impl Visit for EventAction
impl Visit for fyrox_impl::gui::animation::AnimationPlayer
impl Visit for Border
impl Visit for fyrox_impl::gui::brush::GradientPoint
impl Visit for Button
impl Visit for Canvas
impl Visit for CheckBox
impl Visit for ColorGradientEditor
impl Visit for ColorGradientField
impl Visit for ColorPoint
impl Visit for ColorPointsCanvas
impl Visit for AlphaBar
impl Visit for ColorField
impl Visit for ColorPicker
impl Visit for HueBar
impl Visit for SaturationBrightnessField
impl Visit for WidgetContainer
impl Visit for CurveKeyView
impl Visit for CurveKeyViewContainer
impl Visit for CurveEditor
impl Visit for CurvesContainer
impl Visit for HighlightZone
impl Visit for Decorator
impl Visit for DockingManagerLayoutDescriptor
impl Visit for FloatingWindowDescriptor
impl Visit for MultiWindowDescriptor
impl Visit for SplitTilesDescriptor
impl Visit for TileDescriptor
impl Visit for DockingManager
impl Visit for fyrox_impl::gui::dock::Tile
impl Visit for DropdownList
impl Visit for DropdownMenu
impl Visit for Expander
impl Visit for FileBrowser
impl Visit for FileSelector
impl Visit for FileSelectorField
impl Visit for FileType
impl Visit for PathFilter
impl Visit for Font
impl Visit for FormattedText
impl Visit for Position
impl Visit for Run
impl Visit for RunSet
impl Visit for Grid
impl Visit for GridDimension
impl Visit for Image
impl Visit for InputBox
impl Visit for ArrayEditor
impl Visit for fyrox_impl::gui::inspector::editors::array::Item
impl Visit for fyrox_impl::gui::inspector::editors::collection::Item
impl Visit for InheritablePropertyEditor
impl Visit for StyledPropertyEditor
impl Visit for StyledPropertySelector
impl Visit for TextureSliceEditor
impl Visit for TextureSliceEditorWindow
impl Visit for TextureSliceFieldEditor
impl Visit for Inspector
impl Visit for HotKeyEditor
impl Visit for KeyBindingEditor
impl Visit for ListView
impl Visit for ListViewItem
impl Visit for ContextMenu
impl Visit for Menu
impl Visit for MenuItem
impl Visit for KeyboardModifiers
impl Visit for MessageBox
impl Visit for NinePatch
impl Visit for TextureSlice
impl Visit for PathEditor
impl Visit for Popup
impl Visit for ProgressBar
impl Visit for Screen
impl Visit for ScrollBar
impl Visit for ScrollPanel
impl Visit for ScrollViewer
impl Visit for SearchBar
impl Visit for Selector
impl Visit for StackPanel
impl Visit for DragContext
impl Visit for MouseState
impl Visit for RcUiNodeHandle
impl Visit for RestrictionEntry
impl Visit for Thickness
impl Visit for UiNode
impl Visit for UserInterface
impl Visit for Style
impl Visit for StylePropertyContainer
impl Visit for Tab
impl Visit for TabControl
impl Visit for Text
impl Visit for SelectionRange
impl Visit for TextBox
impl Visit for Thumb
impl Visit for ToggleButton
impl Visit for Tree
impl Visit for TreeRoot
impl Visit for UuidEditor
impl Visit for VectorImage
impl Visit for Widget
impl Visit for Grip
impl Visit for Window
impl Visit for WrapPanel
impl Visit for RenderPassDefinition
impl Visit for Shader
impl Visit for ShaderDefinition
impl Visit for ShaderResourceDefinition
impl Visit for ShaderSourceCode
impl Visit for Material
impl Visit for MaterialPropertyGroup
impl Visit for MaterialTextureBinding
impl Visit for CurveResourceState
impl Visit for Model
impl Visit for Texture
impl Visit for TextureBytes
impl Visit for fyrox_impl::scene::animation::absm::AnimationBlendingStateMachine
impl Visit for fyrox_impl::scene::animation::AnimationPlayer
impl Visit for Base
impl Visit for LevelOfDetail
impl Visit for LodGroup
impl Visit for Property
impl Visit for SceneNodeId
impl Visit for ScriptRecord
impl Visit for Camera
impl Visit for ColorGradingLut
impl Visit for OrthographicProjection
impl Visit for PerspectiveProjection
impl Visit for fyrox_impl::scene::collider::BallShape
impl Visit for BitMask
impl Visit for fyrox_impl::scene::collider::CapsuleShape
impl Visit for fyrox_impl::scene::collider::Collider
impl Visit for ConeShape
impl Visit for ConvexPolyhedronShape
impl Visit for fyrox_impl::scene::collider::CuboidShape
impl Visit for CylinderShape
impl Visit for fyrox_impl::scene::collider::GeometrySource
impl Visit for fyrox_impl::scene::collider::HeightfieldShape
impl Visit for InteractionGroups
impl Visit for fyrox_impl::scene::collider::SegmentShape
impl Visit for fyrox_impl::scene::collider::TriangleShape
impl Visit for fyrox_impl::scene::collider::TrimeshShape
impl Visit for Decal
impl Visit for fyrox_impl::scene::dim2::collider::BallShape
impl Visit for fyrox_impl::scene::dim2::collider::CapsuleShape
impl Visit for fyrox_impl::scene::dim2::collider::Collider
impl Visit for fyrox_impl::scene::dim2::collider::CuboidShape
impl Visit for fyrox_impl::scene::dim2::collider::GeometrySource
impl Visit for fyrox_impl::scene::dim2::collider::HeightfieldShape
impl Visit for fyrox_impl::scene::dim2::collider::SegmentShape
impl Visit for TileMapShape
impl Visit for fyrox_impl::scene::dim2::collider::TriangleShape
impl Visit for fyrox_impl::scene::dim2::collider::TrimeshShape
impl Visit for fyrox_impl::scene::dim2::joint::BallJoint
impl Visit for fyrox_impl::scene::dim2::joint::FixedJoint
impl Visit for fyrox_impl::scene::dim2::joint::Joint
impl Visit for fyrox_impl::scene::dim2::joint::JointMotorParams
impl Visit for fyrox_impl::scene::dim2::joint::PrismaticJoint
impl Visit for fyrox_impl::scene::dim2::physics::PhysicsWorld
impl Visit for Rectangle
impl Visit for fyrox_impl::scene::dim2::rigidbody::RigidBody
impl Visit for IntegrationParameters
impl Visit for fyrox_impl::scene::graph::physics::PhysicsWorld
impl Visit for fyrox_impl::scene::graph::Graph
impl Visit for fyrox_impl::scene::joint::BallJoint
impl Visit for fyrox_impl::scene::joint::FixedJoint
impl Visit for fyrox_impl::scene::joint::Joint
impl Visit for fyrox_impl::scene::joint::JointMotorParams
impl Visit for fyrox_impl::scene::joint::PrismaticJoint
impl Visit for RevoluteJoint
impl Visit for CsmOptions
impl Visit for DirectionalLight
impl Visit for PointLight
impl Visit for SpotLight
impl Visit for BaseLight
impl Visit for BytesStorage
impl Visit for TriangleBuffer
impl Visit for VertexAttribute
impl Visit for VertexBuffer
impl Visit for Mesh
impl Visit for BlendShape
impl Visit for Surface
impl Visit for SurfaceData
impl Visit for NodeContainer
impl Visit for Node
impl Visit for BaseEmitter
impl Visit for CuboidEmitter
impl Visit for CylinderEmitter
impl Visit for SphereEmitter
impl Visit for Particle
impl Visit for ParticleSystem
impl Visit for ParticleSystemRng
impl Visit for Pivot
impl Visit for ReflectionProbe
impl Visit for Limb
impl Visit for Ragdoll
impl Visit for fyrox_impl::scene::rigidbody::RigidBody
impl Visit for SkyBox
impl Visit for fyrox_impl::scene::sound::context::SoundContext
impl Visit for AllPassFilterEffect
impl Visit for BandPassFilterEffect
impl Visit for HighPassFilterEffect
impl Visit for HighShelfFilterEffect
impl Visit for LowPassFilterEffect
impl Visit for LowShelfFilterEffect
impl Visit for fyrox_impl::scene::sound::listener::Listener
impl Visit for Reverb
impl Visit for AllPass
impl Visit for Attenuate
impl Visit for AudioBus
impl Visit for AudioBusGraph
impl Visit for Biquad
impl Visit for DelayLine
impl Visit for HrirSphereResourceData
impl Visit for HrtfRenderer
impl Visit for LpfComb
impl Visit for OnePole
impl Visit for Samples
impl Visit for Sound
impl Visit for Sprite
impl Visit for SceneRenderingOptions
impl Visit for Chunk
impl Visit for Layer
impl Visit for Terrain
impl Visit for BrushMacroData
impl Visit for BrushMacroInstanceList
Custom Visit implementation to prevent the visit from completely failing if it encounters data that cannot be visited.
impl Visit for TileMapBrush
impl Visit for TileMapBrushPage
impl Visit for CustomTileCollider
impl Visit for OrthoTransformation
impl Visit for Stamp
impl Visit for StampElement
impl Visit for fyrox_impl::scene::tilemap::Tile
impl Visit for TileDefinitionHandle
impl Visit for TileMap
impl Visit for TileMapData
impl Visit for Tiles
impl Visit for AnimationTiles
impl Visit for NamedValue
impl Visit for NineI8
impl Visit for TileBounds
impl Visit for TileData
impl Visit for TileDefinition
impl Visit for TileMaterial
impl Visit for TileMaterialBounds
impl Visit for TileSet
impl Visit for TileSetColliderLayer
impl Visit for TileSetPage
impl Visit for TileSetPropertyF32
impl Visit for TileSetPropertyI32
impl Visit for TileSetPropertyLayer
impl Visit for TileSetPropertyNine
impl Visit for TileSetPropertyString
impl Visit for TransformSetTiles
impl Visit for Transform
impl Visit for Script
impl Visit for GraphVertex
impl Visit for VertexData
impl Visit for Lightmap
impl Visit for LightmapEntry
impl Visit for Matrix<f32, Const<2>, Const<1>, ArrayStorage<f32, 2, 1>>
impl Visit for Matrix<f32, Const<2>, Const<2>, ArrayStorage<f32, 2, 2>>
impl Visit for Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>
impl Visit for Matrix<f32, Const<3>, Const<3>, ArrayStorage<f32, 3, 3>>
impl Visit for Matrix<f32, Const<4>, Const<1>, ArrayStorage<f32, 4, 1>>
impl Visit for Matrix<f32, Const<4>, Const<4>, ArrayStorage<f32, 4, 4>>
impl Visit for Matrix<f64, Const<2>, Const<1>, ArrayStorage<f64, 2, 1>>
impl Visit for Matrix<f64, Const<3>, Const<1>, ArrayStorage<f64, 3, 1>>
impl Visit for Matrix<f64, Const<4>, Const<1>, ArrayStorage<f64, 4, 1>>
impl Visit for Matrix<i8, Const<2>, Const<1>, ArrayStorage<i8, 2, 1>>
impl Visit for Matrix<i8, Const<3>, Const<1>, ArrayStorage<i8, 3, 1>>
impl Visit for Matrix<i8, Const<4>, Const<1>, ArrayStorage<i8, 4, 1>>
impl Visit for Matrix<i16, Const<2>, Const<1>, ArrayStorage<i16, 2, 1>>
impl Visit for Matrix<i16, Const<3>, Const<1>, ArrayStorage<i16, 3, 1>>
impl Visit for Matrix<i16, Const<4>, Const<1>, ArrayStorage<i16, 4, 1>>
impl Visit for Matrix<i32, Const<2>, Const<1>, ArrayStorage<i32, 2, 1>>
impl Visit for Matrix<i32, Const<3>, Const<1>, ArrayStorage<i32, 3, 1>>
impl Visit for Matrix<i32, Const<4>, Const<1>, ArrayStorage<i32, 4, 1>>
impl Visit for Matrix<i64, Const<2>, Const<1>, ArrayStorage<i64, 2, 1>>
impl Visit for Matrix<i64, Const<3>, Const<1>, ArrayStorage<i64, 3, 1>>
impl Visit for Matrix<i64, Const<4>, Const<1>, ArrayStorage<i64, 4, 1>>
impl Visit for Matrix<u8, Const<2>, Const<1>, ArrayStorage<u8, 2, 1>>
impl Visit for Matrix<u8, Const<3>, Const<1>, ArrayStorage<u8, 3, 1>>
impl Visit for Matrix<u8, Const<4>, Const<1>, ArrayStorage<u8, 4, 1>>
impl Visit for Matrix<u16, Const<2>, Const<1>, ArrayStorage<u16, 2, 1>>
impl Visit for Matrix<u16, Const<3>, Const<1>, ArrayStorage<u16, 3, 1>>
impl Visit for Matrix<u16, Const<4>, Const<1>, ArrayStorage<u16, 4, 1>>
impl Visit for Matrix<u32, Const<2>, Const<1>, ArrayStorage<u32, 2, 1>>
impl Visit for Matrix<u32, Const<3>, Const<1>, ArrayStorage<u32, 3, 1>>
impl Visit for Matrix<u32, Const<4>, Const<1>, ArrayStorage<u32, 4, 1>>
impl Visit for Matrix<u64, Const<2>, Const<1>, ArrayStorage<u64, 2, 1>>
impl Visit for Matrix<u64, Const<3>, Const<1>, ArrayStorage<u64, 3, 1>>
impl Visit for Matrix<u64, Const<4>, Const<1>, ArrayStorage<u64, 4, 1>>
impl Visit for Unit<Complex<f32>>
impl Visit for Unit<Quaternion<f32>>
impl Visit for Color
impl Visit for Hsv
impl Visit for ColorGradient
impl Visit for fyrox_impl::core::color_gradient::GradientPoint
impl Visit for DynTypeContainer
impl Visit for Duration
impl Visit for AxisAlignedBoundingBox
impl Visit for Curve
impl Visit for CurveKey
impl Visit for Frustum
impl Visit for Plane
impl Visit for SmoothAngle
impl Visit for TriangleDefinition
impl Visit for ErasedHandle
impl Visit for ImmutableString
impl Visit for Uuid
impl<B> Visit for BehaviorNode<B>where
B: BaseBehavior,
impl<B> Visit for CompositeNode<B>where
B: BaseBehavior,
impl<B> Visit for Inverter<B>where
B: BaseBehavior,
impl<B> Visit for LeafNode<B>where
B: BaseBehavior,
impl<B> Visit for BehaviorTree<B>where
B: BaseBehavior,
impl<B> Visit for RootNode<B>where
B: BaseBehavior,
impl<K, V> Visit for BiDirHashMap<K, V>
impl<T> Visit for PoseNode<T>where
T: EntityId,
impl<T> Visit for StateAction<T>where
T: EntityId,
impl<T> Visit for LogicNode<T>where
T: EntityId,
impl<T> Visit for Resource<T>where
T: TypedResourceData,
impl<T> Visit for BlendSpace<T>where
T: EntityId,
impl<T> Visit for BlendSpacePoint<T>where
T: EntityId,
impl<T> Visit for BasePoseNode<T>where
T: EntityId,
impl<T> Visit for BlendAnimations<T>where
T: EntityId,
impl<T> Visit for BlendAnimationsByIndex<T>where
T: EntityId,
impl<T> Visit for BlendPose<T>where
T: EntityId,
impl<T> Visit for IndexedBlendInput<T>where
T: EntityId,
impl<T> Visit for LayerMask<T>where
T: EntityId,
impl<T> Visit for Machine<T>where
T: EntityId,
impl<T> Visit for MachineLayer<T>where
T: EntityId,
impl<T> Visit for PlayAnimation<T>where
T: EntityId,
impl<T> Visit for fyrox_impl::generic_animation::machine::State<T>where
T: EntityId,
impl<T> Visit for Transition<T>where
T: EntityId,
impl<T> Visit for AndNode<T>where
T: EntityId,
impl<T> Visit for NotNode<T>where
T: EntityId,
impl<T> Visit for OrNode<T>where
T: EntityId,
impl<T> Visit for XorNode<T>where
T: EntityId,
impl<T> Visit for SpriteSheetAnimation<T>where
T: SpriteSheetTexture,
impl<T> Visit for SpriteSheetFramesContainer<T>where
T: SpriteSheetTexture,
impl<T> Visit for Animation<T>where
T: EntityId,
impl<T> Visit for AnimationContainer<T>where
T: EntityId,
impl<T> Visit for RootMotionSettings<T>where
T: EntityId,
impl<T> Visit for TrackBinding<T>where
T: EntityId,
impl<T> Visit for BitField<T>where
T: BitContainer,
impl<T> Visit for CollectionEditor<T>where
T: CollectionItem,
impl<T> Visit for EnumPropertyEditor<T>where
T: InspectableEnum,
impl<T> Visit for NumericUpDown<T>where
T: NumericType,
impl<T> Visit for RangeEditor<T>where
T: NumericType,
impl<T> Visit for RectEditor<T>where
T: NumericType,
impl<T> Visit for StyledProperty<T>where
T: Visit,
impl<T> Visit for fyrox_impl::utils::astar::Graph<T>where
T: VertexDataProvider,
impl<T> Visit for Rect<T>
impl<T> Visit for fyrox_impl::core::parking_lot::lock_api::Mutex<RawMutex, T>
impl<T> Visit for Handle<T>
impl<T> Visit for InheritableVariable<T>where
T: Visit,
Special non-derived implementation of Visit to account for the special needs of InheritableVariable from Visitors.