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: Into<ItemStr>>(self, alias: A) -> Self
pub fn with_alias<A: Into<ItemStr>>(self, alias: A) -> Self
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: Into<ItemStr>>(self, alias: A) -> Self
pub fn with_module_alias<A: Into<ItemStr>>(self, alias: A) -> Self
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) -> Self
pub fn qualified(self) -> Self
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) -> Self
pub fn direct(self) -> Self
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 PartialEq for Import
impl PartialEq for Import
source§impl PartialOrd for Import
impl PartialOrd for Import
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Eq for Import
impl StructuralEq for Import
impl StructuralPartialEq for Import
Auto Trait Implementations§
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