pub struct PythonModule {
pub imports: Vec<(String, Option<String>)>,
pub from_imports: FromImports,
pub classes: Vec<PythonClass>,
pub functions: Vec<PythonFunction>,
pub statements: Vec<PythonStmt>,
pub module_docstring: Option<String>,
pub all_exports: Vec<String>,
}Expand description
A complete Python module (one .py file).
Fields§
§imports: Vec<(String, Option<String>)>Module-level imports: import X or import X as Y
from_imports: FromImportsFrom-imports: from X import Y or from X import Y as Z
classes: Vec<PythonClass>Top-level class definitions
functions: Vec<PythonFunction>Top-level function definitions
statements: Vec<PythonStmt>Other top-level statements
module_docstring: Option<String>Module docstring
all_exports: Vec<String>__all__ exports
Implementations§
Source§impl PythonModule
impl PythonModule
Sourcepub fn add_import(&mut self, module: impl Into<String>, alias: Option<String>)
pub fn add_import(&mut self, module: impl Into<String>, alias: Option<String>)
Add a module-level import.
Sourcepub fn add_from_import(
&mut self,
module: impl Into<String>,
names: Vec<(String, Option<String>)>,
)
pub fn add_from_import( &mut self, module: impl Into<String>, names: Vec<(String, Option<String>)>, )
Add a from-import.
Sourcepub fn add_class(&mut self, cls: PythonClass)
pub fn add_class(&mut self, cls: PythonClass)
Add a class definition.
Sourcepub fn add_function(&mut self, func: PythonFunction)
pub fn add_function(&mut self, func: PythonFunction)
Add a function definition.
Sourcepub fn add_statement(&mut self, stmt: PythonStmt)
pub fn add_statement(&mut self, stmt: PythonStmt)
Add a top-level statement.
Trait Implementations§
Source§impl Clone for PythonModule
impl Clone for PythonModule
Source§fn clone(&self) -> PythonModule
fn clone(&self) -> PythonModule
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PythonModule
impl Debug for PythonModule
Auto Trait Implementations§
impl Freeze for PythonModule
impl RefUnwindSafe for PythonModule
impl Send for PythonModule
impl Sync for PythonModule
impl Unpin for PythonModule
impl UnsafeUnpin for PythonModule
impl UnwindSafe for PythonModule
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