pub struct Import { /* private fields */ }Expand description
The import of a Rust type use std::collections::HashMap.
Created through the import() function.
Implementations§
source§impl Import
impl Import
sourcepub fn with_alias<A>(self, alias: A) -> Import
pub fn with_alias<A>(self, alias: A) -> Import
Alias the given type as it’s imported.
§Examples
use genco::prelude::*;
let ty = rust::import("std::fmt", "Debug").with_alias("FmtDebug");
let toks = quote!($ty);
assert_eq!(
vec![
"use std::fmt::Debug as FmtDebug;",
"",
"FmtDebug",
],
toks.to_file_vec()?
);sourcepub fn with_module_alias<A>(self, alias: A) -> Import
pub fn with_module_alias<A>(self, alias: A) -> Import
Alias the module being imported.
This also implies that the import is qualified().
§Examples
use genco::prelude::*;
let ty = rust::import("std::fmt", "Debug").with_module_alias("other");
let toks = quote!($ty);
assert_eq!(
vec![
"use std::fmt as other;",
"",
"other::Debug",
],
toks.to_file_vec()?
);sourcepub fn qualified(self) -> Import
pub fn qualified(self) -> Import
Switch to a qualified import mode.
So importing std::fmt::Debug will cause the module to be referenced as
fmt::Debug instead of Debug.
This is implied if with_module_alias() is used.
§Examples
use genco::prelude::*;
let ty = rust::import("std::fmt", "Debug").qualified();
let toks = quote!($ty);
assert_eq!(
vec![
"use std::fmt;",
"",
"fmt::Debug",
],
toks.to_file_vec()?
);sourcepub fn direct(self) -> Import
pub fn direct(self) -> Import
Switch into a direct import mode.
See ImportMode::Direct.
§Examples
use genco::prelude::*;
let ty = rust::import("std::fmt", "Debug").direct();
let toks = quote!($ty);
assert_eq!(
vec![
"use std::fmt::Debug;",
"",
"Debug",
],
toks.to_file_vec()?
);Trait Implementations§
source§impl<'a> FormatInto<Rust> for &'a Import
impl<'a> FormatInto<Rust> for &'a Import
source§impl FormatInto<Rust> for Import
impl FormatInto<Rust> for Import
source§impl Ord for Import
impl Ord for Import
source§impl PartialOrd for Import
impl PartialOrd for Import
impl Eq for Import
impl StructuralPartialEq for Import
Auto Trait Implementations§
impl Freeze for Import
impl RefUnwindSafe for Import
impl Send for Import
impl Sync for Import
impl Unpin for Import
impl UnwindSafe for Import
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)