Docs.rs
  • impl-tools-lib-0.11.3
    • impl-tools-lib 0.11.3
    • Permalink
    • Docs.rs crate page
    • MIT/Apache-2.0
    • Links
    • Repository
    • crates.io
    • Source
    • Owners
    • dhardy
    • Dependencies
      • proc-macro-error2 ^2.0 normal
      • proc-macro2 ^1.0 normal
      • quote ^1.0 normal
      • syn ^2.0.0 normal
    • Versions
    • 100% of the crate is documented
  • Platform
    • i686-pc-windows-msvc
    • i686-unknown-linux-gnu
    • x86_64-apple-darwin
    • x86_64-pc-windows-msvc
    • x86_64-unknown-linux-gnu
  • Feature flags
  • docs.rs
    • About docs.rs
    • Badges
    • Builds
    • Metadata
    • Shorthand URLs
    • Download
    • Rustdoc JSON
    • Build queue
    • Privacy policy
  • Rust
    • Rust website
    • The Book
    • Standard Library API Reference
    • Rust by Example
    • The Cargo Guide
    • Clippy Documentation

Crate impl_tools_lib

impl_tools_lib0.11.3

  • All Items

Sections

  • Impl-tools-lib

Crate Items

  • Modules
  • Structs

Crates

  • impl_tools_lib

Crate impl_tools_lib

Source
Expand description

§Impl-tools-lib

To implement the proc-macros, copy and modify the impl-tools crate, which is merely documentation plus wrappers around this crate.

Modules§

anon
The impl_anon! macro
autoimpl
Implementation of the #[autoimpl] attribute
fields
Custom version of syn fields types supporting initializers
generics
Custom version of syn generics supporting ‘X: trait’ bound
scope
The impl_scope! macro

Structs§

IdentFormatter
Tool to make a formatted Ident
ImplDefault
#[impl_default] attribute
SimplePath
Simple, allocation-free path representation

Results

Settings
Help
    struct
    impl_tools_lib::scope::Scope
    Contents of impl_scope!
    module
    impl_tools_lib::scope
    The impl_scope! macro
    struct
    impl_tools_lib::scope::ScopeMod
    A module supporting impl Self syntax
    trait
    impl_tools_lib::scope::ScopeAttr
    Attribute rule for Scope
    enum
    impl_tools_lib::scope::ScopeItem
    Content of items supported by Scope that are not common to …
    struct
    impl_tools_lib::scope::ScopeModAttrs
    Attribute for #[impl_scope]
    struct
    impl_tools_lib::anon::AnonScope
    A Scope plus field values
    method
    impl_tools_lib::anon::Anon::into_scope
    Convert to a AnonScope
    struct field
    impl_tools_lib::scope::Scope::vis
    Scope -> Visibility
    Optional pub, etc.
    struct field
    impl_tools_lib::scope::Scope::item
    Scope -> ScopeItem
    The item
    struct field
    impl_tools_lib::scope::Scope::semi
    Scope -> Option
    Trailing semicolon (type alias and unit struct only)
    struct field
    impl_tools_lib::scope::Scope::attrs
    Scope -> Vec
    Outer attributes on the item
    struct field
    impl_tools_lib::scope::Scope::ident
    Scope -> Ident
    Item identifier
    struct field
    impl_tools_lib::scope::Scope::impls
    Scope -> Vec
    Implementation items
    method
    impl_tools_lib::scope::Scope::expand
    Scope -> TokenStream
    Generate the TokenStream
    struct field
    impl_tools_lib::scope::Scope::generics
    Scope -> Generics
    Item generics
    struct field
    impl_tools_lib::scope::Scope::generated
    Scope -> Vec
    Output of ScopeAttr rules
    method
    impl_tools_lib::scope::Scope::expand_impl_self
    &mut Scope -> ()
    Expand impl Self
    method
    impl_tools_lib::scope::Scope::fmt
    &Scope, &mut Formatter -> Result
    method
    impl_tools_lib::scope::Scope::to_tokens
    &Scope, &mut TokenStream -> ()
    trait method
    impl_tools_lib::scope::ScopeAttr::apply
    &ScopeAttr, Attribute, &mut Scope -> Result<()>
    Function type of ScopeAttr rule
    method
    impl_tools_lib::scope::AttrImplDefault::apply
    &AttrImplDefault, Attribute, &mut Scope -> Result<()>
    method
    impl_tools_lib::scope::Scope::apply_attrs
    &mut Scope, Fn (&Path) -> Option<&ScopeAttr> -> ()
    Apply attribute rules
    struct field
    impl_tools_lib::scope::ScopeMod::contents
    ScopeMod -> Scope
    Contents
    method
    impl_tools_lib::anon::AnonScope::deref
    &AnonScope -> &Scope
    method
    impl_tools_lib::anon::AnonScope::deref_mut
    &mut AnonScope -> &mut Scope