From c9febaa56d185a034d85778e4f4f6213f765c19e Mon Sep 17 00:00:00 2001 From: Lloyd Date: Sun, 23 Apr 2017 21:34:56 +0900 Subject: [PATCH] 0.1.27 release --- .travis.yml | 2 +- Cargo.toml | 8 ++++---- benches/labelled.rs | 30 +++++++++++++++--------------- core/Cargo.toml | 4 ++-- core/src/hlist.rs | 2 ++ derives/Cargo.toml | 4 ++-- laws/Cargo.toml | 4 ++-- 7 files changed, 28 insertions(+), 26 deletions(-) diff --git a/.travis.yml b/.travis.yml index a907d3dcd..35fc26dfd 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,7 +4,7 @@ sudo: false rust: - stable - - nightly + - nightly-2017-04-21 cache: cargo diff --git a/Cargo.toml b/Cargo.toml index e1f042bf9..4237cd13b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "frunk" -version = "0.1.25" +version = "0.1.27" authors = ["Lloyd "] description = "Frunk provides developers with a number of functional programming tools like HList, Coproduct, Generic, LabelledGeneric, Validated, Monoid, Semigroup and friends." license = "MIT" @@ -16,12 +16,12 @@ time = "0.1.36" [dependencies.frunk_core] path = "core" -version = "0.0.13" +version = "0.0.15" [dependencies.frunk_derives] path = "derives" -version = "0.0.14" +version = "0.0.16" [dev-dependencies.frunk_laws] path = "laws" -version = "0.0.3" \ No newline at end of file +version = "0.0.5" \ No newline at end of file diff --git a/benches/labelled.rs b/benches/labelled.rs index 244eff270..f0715416c 100644 --- a/benches/labelled.rs +++ b/benches/labelled.rs @@ -309,21 +309,21 @@ fn big_from_24fields(b: &mut Bencher) { // Hilariously, uncommenting this out will kill the performance in the above 2 benchmarks -//#[bench] -//fn big_transform_from_25fields(b: &mut Bencher) { -// b.iter(|| { -// let j = BigStruct25FieldsReverse::transform_from(build_big_struct_25fields()); -// j -// }) -//} -// -//#[bench] -//fn big_from_25fields(b: &mut Bencher) { -// b.iter(|| { -// let j = >::from(build_big_struct_25fields()); -// j -// }) -//} +#[bench] +fn big_transform_from_25fields(b: &mut Bencher) { + b.iter(|| { + let j = BigStruct25FieldsReverse::transform_from(build_big_struct_25fields()); + j + }) +} + +#[bench] +fn big_from_25fields(b: &mut Bencher) { + b.iter(|| { + let j = >::from(build_big_struct_25fields()); + j + }) +} diff --git a/core/Cargo.toml b/core/Cargo.toml index a62bd1036..779cdd90a 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "frunk_core" -version = "0.0.13" +version = "0.0.15" authors = ["Lloyd "] description = "Frunk core provides developers with HList and Generic" license = "MIT" @@ -13,4 +13,4 @@ travis-ci = { repository = "lloydmeta/frunk" } [dev-dependencies.frunk_derives] path = "../derives" -version = "0.0.14" +version = "0.0.16" diff --git a/core/src/hlist.rs b/core/src/hlist.rs index 94b076f1e..70bd5ebc5 100644 --- a/core/src/hlist.rs +++ b/core/src/hlist.rs @@ -435,6 +435,7 @@ pub trait Sculptor { impl Sculptor for Source { type Remainder = Source; + #[inline(always)] fn sculpt(self) -> (HNil, Self::Remainder) { (HNil, self) } @@ -453,6 +454,7 @@ for HCons { type Remainder = < as Plucker>::Remainder as Sculptor>::Remainder; + #[inline(always)] fn sculpt(self) -> (HCons, Self::Remainder) { let (p, r): (THead, as Plucker>::Remainder) = self.pluck(); diff --git a/derives/Cargo.toml b/derives/Cargo.toml index 90be4b676..ea4037aef 100644 --- a/derives/Cargo.toml +++ b/derives/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "frunk_derives" -version = "0.0.14" +version = "0.0.16" authors = ["Lloyd "] description = "frunk_derives contains the custom derivations for certain traits in Frunk." license = "MIT" @@ -20,4 +20,4 @@ quote = "0.3.15" [dependencies.frunk_core] path = "../core" -version = "0.0.13" +version = "0.0.15" diff --git a/laws/Cargo.toml b/laws/Cargo.toml index e16558d56..b89c3247d 100644 --- a/laws/Cargo.toml +++ b/laws/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "frunk_laws" -version = "0.0.3" +version = "0.0.5" authors = ["Lloyd "] description = "frunk_laws contains laws for algebras declared in Frunk." license = "MIT" @@ -13,7 +13,7 @@ travis-ci = { repository = "lloydmeta/frunk" } [dependencies.frunk] path = ".." -version = "0.1.25" +version = "0.1.27" [dependencies] quickcheck = "0.3" \ No newline at end of file