pub struct ClassInfo {
pub name: String,
pub bases: Vec<String>,
pub docstring: Option<String>,
pub methods: Vec<FunctionInfo>,
pub fields: Vec<FieldInfo>,
pub inner_classes: Vec<ClassInfo>,
pub decorators: Vec<String>,
pub line_number: usize,
pub end_line_number: Option<usize>,
pub language: String,
}Expand description
Information about a class or struct.
Fields§
§name: StringClass name
bases: Vec<String>Base classes / implemented interfaces
docstring: Option<String>Docstring or doc comment
methods: Vec<FunctionInfo>Methods defined in this class
fields: Vec<FieldInfo>Fields/member variables
inner_classes: Vec<ClassInfo>BUG #7 FIX: Inner/nested classes
decorators: Vec<String>Decorators/attributes applied
line_number: usizeStarting line number (1-indexed)
end_line_number: Option<usize>Ending line number (1-indexed)
language: StringSource language
Implementations§
Source§impl ClassInfo
impl ClassInfo
Sourcepub fn signature(&self) -> String
pub fn signature(&self) -> String
Generate a language-appropriate class signature string.
Produces idiomatic class declarations for each supported language:
- Python:
class Foo(Base1, Base2) - TypeScript/JavaScript:
class Foo extends Base - Go:
type Foo struct - Rust:
struct Foo - Java/Kotlin/C#:
class Foo extends Base
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ClassInfo
impl<'de> Deserialize<'de> for ClassInfo
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ClassInfo
impl RefUnwindSafe for ClassInfo
impl Send for ClassInfo
impl Sync for ClassInfo
impl Unpin for ClassInfo
impl UnwindSafe for ClassInfo
Blanket Implementations§
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request