pub struct TypeDefinition {
pub name: String,
pub visibility: Visibility,
pub is_trait: bool,
pub is_newtype: bool,
pub inner_type: Option<String>,
pub has_serde_derive: bool,
pub public_field_count: usize,
pub total_field_count: usize,
}Expand description
Information about a type definition in a module
Fields§
§name: StringName of the type
visibility: VisibilityVisibility of the type
is_trait: boolWhether this is a trait (vs struct/enum)
is_newtype: boolWhether this is a newtype pattern (tuple struct with single field)
inner_type: Option<String>Inner type for newtypes (e.g., “u64” for struct UserId(u64))
has_serde_derive: boolWhether this type has #[derive(Serialize)] or #[derive(Deserialize)]
public_field_count: usizeNumber of public fields (for pub field exposure detection)
total_field_count: usizeTotal number of fields
Trait Implementations§
Source§impl Clone for TypeDefinition
impl Clone for TypeDefinition
Source§fn clone(&self) -> TypeDefinition
fn clone(&self) -> TypeDefinition
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for TypeDefinition
impl RefUnwindSafe for TypeDefinition
impl Send for TypeDefinition
impl Sync for TypeDefinition
impl Unpin for TypeDefinition
impl UnwindSafe for TypeDefinition
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more