Skip to content

Releases: kas-gui/impl-tools

0.10.1

21 Oct 19:23
Compare
Choose a tag to compare

What's Changed

  • Cleanup warnings; CI; dependabot by @dhardy in #38
  • Remove usage of unmaintained crate proc-macro-error. by @AurelienFT in #41
  • MSRV=1.61; prepare release 0.10.1 by @dhardy in #42

New Contributors

Full Changelog: 0.10.0...0.10.1

0.10.0

08 Sep 09:55
3fe5057
Compare
Choose a tag to compare
  • Rename singleton!impl_anon! (#36)
  • Reorganise impl-tools-lib: new anon and scope public modules (#36)

0.9.1

07 Sep 10:43
73c70c2
Compare
Choose a tag to compare
  • Fix clone for fields which auto-deref (issue #34)

0.9.0

07 Sep 10:43
0bc7248
Compare
Choose a tag to compare
  • Update to syn v2.0.0

0.8.0

07 Sep 10:42
Compare
Choose a tag to compare
  • Bump MSRV to 1.58.0 (#31)
  • #[autoimpl(Clone, Debug, PartialEq, Eq, Hash)] now all support enums
    (with optional where clause, without ignore clauses) (#31)
  • Add impl_tools_lib::ImplTrait::enum_impl, enum_items with default impls;
    ImplTraits::expand now supports enums (#31)
  • Add impl_tools_lib::Ident_formatter utility (#31)

Note: PartialOrd, Ord could now support enums (unimplemented). ignore and
using clauses are deliberately not supported (due to syntactic ambiguity).

0.6.2, lib 0.7.1

16 Dec 19:31
454e7ae
Compare
Choose a tag to compare
  • Fix #[autoimpl] on traits: copy #[cfg(..)] attributes (#30)

0.6.1, lib 0.7.0

01 Dec 11:32
daa26b2
Compare
Choose a tag to compare
  • Better diagnostics for trait-redefinition: require Deref bound (#28)
  • Document Deref with custom Target type

impl-tools-lib has breaking changes and therefore a higher version number (0.7.0):

  • Replace free function impl_generics with method Generics::impl_generics
  • Add method Generics::ty_generics

Note: next breaking release for impl-tools should bump version to match -lib.

0.6.0

18 Nov 09:11
545a11e
Compare
Choose a tag to compare
  • Add ImplTrait::support_path_args, ImplArgs::path_args (#26)
  • Path args: support Deref<Target = Foo> (#26)

0.5.2: singleton!

06 Oct 12:50
fe651f1
Compare
Choose a tag to compare

[0.5.2] — 2022-10-06

  • Add singleton! macro (#25)
use std::fmt;
fn main() {
    let world = "world";
    let says_hello_world = impl_tools::singleton! {
        struct(&'static str = world);
        impl fmt::Display for Self {
            fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
                write!(f, "hello {}", self.0)
            }
        }
    };
    assert_eq!(format!("{}", says_hello_world), "hello world");
}

0.5.1

23 Sep 18:26
d5e3e9c
Compare
Choose a tag to compare
  • Fix: do not copy attributes on trait items (#24)