diff --git a/doc/languages-frameworks/rust.md b/doc/languages-frameworks/rust.md index aa6a7d654108..d3a25e9d1358 100644 --- a/doc/languages-frameworks/rust.md +++ b/doc/languages-frameworks/rust.md @@ -79,19 +79,24 @@ an example for a minimal `hello` crate: Now, the file produced by the call to `carnix`, called `hello.nix`, looks like: ``` -with import {}; +# Generated by carnix 0.6.5: carnix -o hello.nix --src ./. Cargo.lock --standalone +{ lib, buildPlatform, buildRustCrate, fetchgit }: let kernel = buildPlatform.parsed.kernel.name; # ... (content skipped) - hello_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { - crateName = "hello"; - version = "0.1.0"; - authors = [ "Authorname " ]; - src = ./.; - inherit dependencies buildDependencies features; - }; in rec { - hello_0_1_0 = hello_0_1_0_ rec {}; + hello = f: hello_0_1_0 { features = hello_0_1_0_features { hello_0_1_0 = f; }; }; + hello_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "hello"; + version = "0.1.0"; + authors = [ "pe@pijul.org " ]; + src = ./.; + inherit dependencies buildDependencies features; + }; + hello_0_1_0 = { features?(hello_0_1_0_features {}) }: hello_0_1_0_ {}; + hello_0_1_0_features = f: updateFeatures f (rec { + hello_0_1_0.default = (f.hello_0_1_0.default or true); + }) [ ]; } ``` @@ -103,33 +108,44 @@ dependencies, for instance by adding a single line `libc="*"` to our following nix file: ``` -with import {}; +# Generated by carnix 0.6.5: carnix -o hello.nix --src ./. Cargo.lock --standalone +{ lib, buildPlatform, buildRustCrate, fetchgit }: let kernel = buildPlatform.parsed.kernel.name; # ... (content skipped) - hello_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { - crateName = "hello"; - version = "0.1.0"; - authors = [ "Jörg Thalheim " ]; - src = ./.; - inherit dependencies buildDependencies features; - }; - libc_0_2_34_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { - crateName = "libc"; - version = "0.2.34"; - authors = [ "The Rust Project Developers" ]; - sha256 = "11jmqdxmv0ka10ay0l8nzx0nl7s2lc3dbrnh1mgbr2grzwdyxi2s"; - inherit dependencies buildDependencies features; - }; in rec { - hello_0_1_0 = hello_0_1_0_ rec { - dependencies = [ libc_0_2_34 ]; + hello = f: hello_0_1_0 { features = hello_0_1_0_features { hello_0_1_0 = f; }; }; + hello_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "hello"; + version = "0.1.0"; + authors = [ "pe@pijul.org " ]; + src = ./.; + inherit dependencies buildDependencies features; }; - libc_0_2_34_features."default".from_hello_0_1_0__default = true; - libc_0_2_34 = libc_0_2_34_ rec { - features = mkFeatures libc_0_2_34_features; + libc_0_2_36_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "libc"; + version = "0.2.36"; + authors = [ "The Rust Project Developers" ]; + sha256 = "01633h4yfqm0s302fm0dlba469bx8y6cs4nqc8bqrmjqxfxn515l"; + inherit dependencies buildDependencies features; }; - libc_0_2_34_features."use_std".self_default = hasDefault libc_0_2_34_features; + hello_0_1_0 = { features?(hello_0_1_0_features {}) }: hello_0_1_0_ { + dependencies = mapFeatures features ([ libc_0_2_36 ]); + }; + hello_0_1_0_features = f: updateFeatures f (rec { + hello_0_1_0.default = (f.hello_0_1_0.default or true); + libc_0_2_36.default = true; + }) [ libc_0_2_36_features ]; + libc_0_2_36 = { features?(libc_0_2_36_features {}) }: libc_0_2_36_ { + features = mkFeatures (features.libc_0_2_36 or {}); + }; + libc_0_2_36_features = f: updateFeatures f (rec { + libc_0_2_36.default = (f.libc_0_2_36.default or true); + libc_0_2_36.use_std = + (f.libc_0_2_36.use_std or false) || + (f.libc_0_2_36.default or false) || + (libc_0_2_36.default or false); + }) []; } ``` @@ -146,7 +162,7 @@ or build inputs by overriding the hello crate in a seperate file. ``` with import {}; -(import ./hello.nix).hello_0_1_0.override { +((import ./hello.nix).hello {}).override { crateOverrides = defaultCrateOverrides // { hello = attrs: { buildInputs = [ openssl ]; }; }; @@ -166,7 +182,7 @@ patches the derivation: ``` with import {}; -(import ./hello.nix).hello_0_1_0.override { +((import ./hello.nix).hello {}).override { crateOverrides = defaultCrateOverrides // { hello = attrs: lib.optionalAttrs (lib.versionAtLeast attrs.version "1.0") { postPatch = '' @@ -187,7 +203,7 @@ crate, we could do: ``` with import {}; -(import hello.nix).hello_0_1_0.override { +((import hello.nix).hello {}).override { crateOverrides = defaultCrateOverrides // { libc = attrs: { buildInputs = []; }; }; @@ -199,23 +215,35 @@ Three more parameters can be overridden: - The version of rustc used to compile the crate: ``` - hello_0_1_0.override { rust = pkgs.rust; }; + (hello {}).override { rust = pkgs.rust; }; ``` - Whether to build in release mode or debug mode (release mode by default): ``` - hello_0_1_0.override { release = false; }; + (hello {}).override { release = false; }; ``` - Whether to print the commands sent to rustc when building (equivalent to `--verbose` in cargo: ``` - hello_0_1_0.override { verbose = false; }; + (hello {}).override { verbose = false; }; ``` +One can also supply features switches. For example, if we want to +compile `diesel_cli` only with the `postgres` feature, and no default +features, we would write: + +``` +(callPackage ./diesel.nix {}).diesel { + default = false; + postgres = true; +} +``` + + ## Using the Rust nightlies overlay diff --git a/pkgs/build-support/rust/carnix.nix b/pkgs/build-support/rust/carnix.nix index 1457832c9285..8b0af499c8f1 100644 --- a/pkgs/build-support/rust/carnix.nix +++ b/pkgs/build-support/rust/carnix.nix @@ -1,27 +1,24 @@ -# Generated by carnix 0.6.0: carnix -o carnix.nix --src ./. Cargo.lock +# Generated by carnix 0.6.5: carnix -o carnix.nix Cargo.lock --src ./. { lib, buildPlatform, buildRustCrate, fetchgit }: let kernel = buildPlatform.parsed.kernel.name; abi = buildPlatform.parsed.abi.name; - hasFeature = feature: - lib.lists.any - (originName: feature.${originName}) - (builtins.attrNames feature); - include = includedFiles: src: builtins.filterSource (path: type: lib.lists.any (f: let p = toString (src + ("/" + f)); in (path == p) || (type == "directory" && lib.strings.hasPrefix path p) ) includedFiles ) src; - + updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions); + mapFeatures = features: map (fun: fun { features = features; }); mkFeatures = feat: lib.lists.foldl (features: featureName: - if featureName != "" && hasFeature feat.${featureName} then + if feat.${featureName} or false then [ featureName ] ++ features else features - ) (if hasFeature (feat.default or {}) then [ "default" ] else []) (builtins.attrNames feat); + ) [] (builtins.attrNames feat); in rec { + carnix = f: carnix_0_6_5 { features = carnix_0_6_5_features { carnix_0_6_5 = f; }; }; aho_corasick_0_6_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { crateName = "aho-corasick"; version = "0.6.3"; @@ -74,11 +71,11 @@ rec { sha256 = "0p4b3nr0s5nda2qmm7xdhnvh4lkqk3xd8l9ffmwbvqw137vx7mj1"; inherit dependencies buildDependencies features; }; - carnix_0_6_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + carnix_0_6_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { crateName = "carnix"; - version = "0.6.0"; + version = "0.6.5"; authors = [ "pe@pijul.org " ]; - src = include [ "Cargo.toml" "src/main.rs" "src/cache.rs" "src/cfg.rs" "src/krate/mod.rs" "src/krate/prefetch.rs" ] ./.; + sha256 = "0r952s5az5mhw7z2r421i5lr0w5h436hah61md2bdb3204c2pl9c"; inherit dependencies buildDependencies features; }; cc_1_0_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { @@ -95,6 +92,13 @@ rec { sha256 = "0x06hvrrqy96m97593823vvxcgvjaxckghwyy2jcyc8qc7c6cyhi"; inherit dependencies buildDependencies features; }; + chrono_0_4_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "chrono"; + version = "0.4.0"; + authors = [ "Kang Seonghoon " ]; + sha256 = "0hm53hi6v7b6b1va6vn96lx26wvj8gzi2g51s1j02nlz0jcprw6a"; + inherit dependencies buildDependencies features; + }; clap_2_28_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { crateName = "clap"; version = "2.28.0"; @@ -125,11 +129,11 @@ rec { sha256 = "04kpfd84lvyrkb2z4sljlz2d3d5qczd0sb1yy37fgijq2yx3vb37"; inherit dependencies buildDependencies features; }; - env_logger_0_4_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + env_logger_0_5_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { crateName = "env_logger"; - version = "0.4.3"; + version = "0.5.3"; authors = [ "The Rust Project Developers" ]; - sha256 = "0nrx04p4xa86d5kc7aq4fwvipbqji9cmgy449h47nc9f1chafhgg"; + sha256 = "1i7jyxrwwv3w2h200ynq3fjg1iyyvi76ny215hi6d334vkkw2s2y"; inherit dependencies buildDependencies features; }; error_chain_0_11_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { @@ -205,11 +209,11 @@ rec { sha256 = "04da208h6jb69f46j37jnvsw2i1wqplglp4d61csqcrhh83avbgl"; inherit dependencies buildDependencies features; }; - log_0_3_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + log_0_4_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { crateName = "log"; - version = "0.3.8"; + version = "0.4.1"; authors = [ "The Rust Project Developers" ]; - sha256 = "1c43z4z85sxrsgir4s1hi84558ab5ic7jrn5qgmsiqcv90vvn006"; + sha256 = "01vm8yy3wngvyj6qp1x3xpcb4xq7v67yn9l7fsma8kz28mliz90d"; inherit dependencies buildDependencies features; }; lru_cache_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { @@ -233,6 +237,27 @@ rec { sha256 = "1vcllxrz9hdw6j25kn020ka3psz1vkaqh1hm3yfak2240zrxgi07"; inherit dependencies buildDependencies features; }; + num_0_1_40_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "num"; + version = "0.1.40"; + authors = [ "The Rust Project Developers" ]; + sha256 = "0b29c25n9mpf6a921khj7a6y3hz5va4vgwppcd2if975qq1shakg"; + inherit dependencies buildDependencies features; + }; + num_integer_0_1_35_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "num-integer"; + version = "0.1.35"; + authors = [ "The Rust Project Developers" ]; + sha256 = "0xybj8isi9b6wc646d5rc043i8l8j6wy0vrl4pn995qms9fxbbcc"; + inherit dependencies buildDependencies features; + }; + num_iter_0_1_34_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "num-iter"; + version = "0.1.34"; + authors = [ "The Rust Project Developers" ]; + sha256 = "02cld7x9dzbqbs6sxxzq1i22z3awlcd6ljkgvhkfr9rsnaxphzl9"; + inherit dependencies buildDependencies features; + }; num_traits_0_1_40_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { crateName = "num-traits"; version = "0.1.40"; @@ -362,6 +387,13 @@ rec { sha256 = "0rirc5prqppzgd15fm8ayan349lgk2k5iqdkrbwrwrv5pm4znsnz"; inherit dependencies buildDependencies features; }; + termcolor_0_3_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "termcolor"; + version = "0.3.3"; + authors = [ "Andrew Gallant " ]; + sha256 = "1rb853jzvkbwm62373dhls4x4r3r5cvfcsxvqh0i75rhx5j8kwsz"; + inherit dependencies buildDependencies features; + }; termion_1_5_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { crateName = "termion"; version = "1.5.1"; @@ -461,690 +493,901 @@ rec { libName = "build"; inherit dependencies buildDependencies features; }; - aho_corasick_0_6_3 = f: aho_corasick_0_6_3_ rec { - dependencies = [ (memchr_1_0_2 f) ]; + wincolor_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { + crateName = "wincolor"; + version = "0.1.4"; + authors = [ "Andrew Gallant " ]; + sha256 = "0cxv6hadnj5vffb8a73y7055p59n20bpqd524df85cm29dcjl38a"; + inherit dependencies buildDependencies features; }; - aho_corasick_0_6_3_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - memchr_1_0_2.default.from_aho_corasick_0_6_3__default_ = true; - })) - [ memchr_1_0_2_features ]; - ansi_term_0_10_2 = f: ansi_term_0_10_2_ rec {}; - ansi_term_0_10_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - atty_0_2_3 = f: atty_0_2_3_ rec { - dependencies = (if kernel == "redox" then [ (termion_1_5_1 f) ] else []) - ++ (if (kernel == "linux" || kernel == "darwin") then [ (libc_0_2_33 f) ] else []) - ++ (if kernel == "windows" then [ (kernel32_sys_0_2_2 f) (winapi_0_2_8 f) ] else []); + aho_corasick_0_6_3 = { features?(aho_corasick_0_6_3_features {}) }: aho_corasick_0_6_3_ { + dependencies = mapFeatures features ([ memchr_1_0_2 ]); }; - atty_0_2_3_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - kernel32_sys_0_2_2.default.from_atty_0_2_3__default_ = true; - libc_0_2_33.default.from_atty_0_2_3__default_ = false; - termion_1_5_1.default.from_atty_0_2_3__default_ = true; - winapi_0_2_8.default.from_atty_0_2_3__default_ = true; - })) - [ termion_1_5_1_features libc_0_2_33_features kernel32_sys_0_2_2_features winapi_0_2_8_features ]; - backtrace_0_3_4 = f: backtrace_0_3_4_ rec { - dependencies = [ (cfg_if_0_1_2 f) (rustc_demangle_0_1_5 f) ] - ++ (if (kernel == "linux" || kernel == "darwin") && !(kernel == "fuchsia") && !(kernel == "emscripten") && !(kernel == "darwin") && !(kernel == "ios") then [ ] - ++ (if hasFeature (f.backtrace_0_3_4."backtrace-sys" or {}) then [(backtrace_sys_0_1_16 f)] else []) else []) - ++ (if (kernel == "linux" || kernel == "darwin") then [ (libc_0_2_33 f) ] else []) - ++ (if kernel == "windows" then [ ] - ++ (if hasFeature (f.backtrace_0_3_4."dbghelp-sys" or {}) then [(dbghelp_sys_0_2_0 f)] else []) - ++ (if hasFeature (f.backtrace_0_3_4."kernel32-sys" or {}) then [(kernel32_sys_0_2_2 f)] else []) - ++ (if hasFeature (f.backtrace_0_3_4."winapi" or {}) then [(winapi_0_2_8 f)] else []) else []); - features = mkFeatures (f.backtrace_0_3_4 or {}); + aho_corasick_0_6_3_features = f: updateFeatures f (rec { + aho_corasick_0_6_3.default = (f.aho_corasick_0_6_3.default or true); + memchr_1_0_2.default = true; + }) [ memchr_1_0_2_features ]; + ansi_term_0_10_2 = { features?(ansi_term_0_10_2_features {}) }: ansi_term_0_10_2_ {}; + ansi_term_0_10_2_features = f: updateFeatures f (rec { + ansi_term_0_10_2.default = (f.ansi_term_0_10_2.default or true); + }) []; + atty_0_2_3 = { features?(atty_0_2_3_features {}) }: atty_0_2_3_ { + dependencies = (if kernel == "redox" then mapFeatures features ([ termion_1_5_1 ]) else []) + ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_33 ]) else []) + ++ (if kernel == "windows" then mapFeatures features ([ kernel32_sys_0_2_2 winapi_0_2_8 ]) else []); }; - backtrace_0_3_4_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - backtrace_0_3_4."kernel32-sys".self_dbghelp = hasFeature (backtrace_0_3_4."dbghelp" or {}) || hasFeature (features.backtrace_0_3_4."dbghelp" or {}); - backtrace_0_3_4."winapi".self_dbghelp = hasFeature (backtrace_0_3_4."dbghelp" or {}) || hasFeature (features.backtrace_0_3_4."dbghelp" or {}); - backtrace_0_3_4."dbghelp-sys".self_dbghelp = hasFeature (backtrace_0_3_4."dbghelp" or {}) || hasFeature (features.backtrace_0_3_4."dbghelp" or {}); - backtrace_0_3_4."libunwind".self_default = hasFeature (backtrace_0_3_4.default or {}) || hasFeature (features.backtrace_0_3_4.default or {}); - backtrace_0_3_4."libbacktrace".self_default = hasFeature (backtrace_0_3_4.default or {}) || hasFeature (features.backtrace_0_3_4.default or {}); - backtrace_0_3_4."coresymbolication".self_default = hasFeature (backtrace_0_3_4.default or {}) || hasFeature (features.backtrace_0_3_4.default or {}); - backtrace_0_3_4."dladdr".self_default = hasFeature (backtrace_0_3_4.default or {}) || hasFeature (features.backtrace_0_3_4.default or {}); - backtrace_0_3_4."dbghelp".self_default = hasFeature (backtrace_0_3_4.default or {}) || hasFeature (features.backtrace_0_3_4.default or {}); - backtrace_0_3_4."addr2line".self_gimli-symbolize = hasFeature (backtrace_0_3_4."gimli-symbolize" or {}) || hasFeature (features.backtrace_0_3_4."gimli-symbolize" or {}); - backtrace_0_3_4."findshlibs".self_gimli-symbolize = hasFeature (backtrace_0_3_4."gimli-symbolize" or {}) || hasFeature (features.backtrace_0_3_4."gimli-symbolize" or {}); - backtrace_0_3_4."backtrace-sys".self_libbacktrace = hasFeature (backtrace_0_3_4."libbacktrace" or {}) || hasFeature (features.backtrace_0_3_4."libbacktrace" or {}); - backtrace_0_3_4."rustc-serialize".self_serialize-rustc = hasFeature (backtrace_0_3_4."serialize-rustc" or {}) || hasFeature (features.backtrace_0_3_4."serialize-rustc" or {}); - backtrace_0_3_4."serde".self_serialize-serde = hasFeature (backtrace_0_3_4."serialize-serde" or {}) || hasFeature (features.backtrace_0_3_4."serialize-serde" or {}); - backtrace_0_3_4."serde_derive".self_serialize-serde = hasFeature (backtrace_0_3_4."serialize-serde" or {}) || hasFeature (features.backtrace_0_3_4."serialize-serde" or {}); - backtrace_sys_0_1_16.default.from_backtrace_0_3_4__default_ = true; - cfg_if_0_1_2.default.from_backtrace_0_3_4__default_ = true; - dbghelp_sys_0_2_0.default.from_backtrace_0_3_4__default_ = true; - kernel32_sys_0_2_2.default.from_backtrace_0_3_4__default_ = true; - libc_0_2_33.default.from_backtrace_0_3_4__default_ = true; - rustc_demangle_0_1_5.default.from_backtrace_0_3_4__default_ = true; - winapi_0_2_8.default.from_backtrace_0_3_4__default_ = true; - })) - [ cfg_if_0_1_2_features rustc_demangle_0_1_5_features backtrace_sys_0_1_16_features libc_0_2_33_features dbghelp_sys_0_2_0_features kernel32_sys_0_2_2_features winapi_0_2_8_features ]; - backtrace_sys_0_1_16 = f: backtrace_sys_0_1_16_ rec { - dependencies = [ (libc_0_2_33 f) ]; - buildDependencies = [ (cc_1_0_3 f) ]; + atty_0_2_3_features = f: updateFeatures f (rec { + atty_0_2_3.default = (f.atty_0_2_3.default or true); + kernel32_sys_0_2_2.default = true; + libc_0_2_33.default = (f.libc_0_2_33.default or false); + termion_1_5_1.default = true; + winapi_0_2_8.default = true; + }) [ termion_1_5_1_features libc_0_2_33_features kernel32_sys_0_2_2_features winapi_0_2_8_features ]; + backtrace_0_3_4 = { features?(backtrace_0_3_4_features {}) }: backtrace_0_3_4_ { + dependencies = mapFeatures features ([ cfg_if_0_1_2 rustc_demangle_0_1_5 ]) + ++ (if (kernel == "linux" || kernel == "darwin") && !(kernel == "fuchsia") && !(kernel == "emscripten") && !(kernel == "darwin") && !(kernel == "ios") then mapFeatures features ([ ] + ++ (if features.backtrace_0_3_4.backtrace-sys or false then [ backtrace_sys_0_1_16 ] else [])) else []) + ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_33 ]) else []) + ++ (if kernel == "windows" then mapFeatures features ([ ] + ++ (if features.backtrace_0_3_4.dbghelp-sys or false then [ dbghelp_sys_0_2_0 ] else []) + ++ (if features.backtrace_0_3_4.kernel32-sys or false then [ kernel32_sys_0_2_2 ] else []) + ++ (if features.backtrace_0_3_4.winapi or false then [ winapi_0_2_8 ] else [])) else []); + features = mkFeatures (features.backtrace_0_3_4 or {}); }; - backtrace_sys_0_1_16_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - cc_1_0_3.default.from_backtrace_sys_0_1_16__default_ = true; - libc_0_2_33.default.from_backtrace_sys_0_1_16__default_ = true; - })) - [ libc_0_2_33_features cc_1_0_3_features ]; - bitflags_0_7_0 = f: bitflags_0_7_0_ rec {}; - bitflags_0_7_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - bitflags_1_0_1 = f: bitflags_1_0_1_ rec { - features = mkFeatures (f.bitflags_1_0_1 or {}); + backtrace_0_3_4_features = f: updateFeatures f (rec { + backtrace_0_3_4.addr2line = + (f.backtrace_0_3_4.addr2line or false) || + (f.backtrace_0_3_4.gimli-symbolize or false) || + (backtrace_0_3_4.gimli-symbolize or false); + backtrace_0_3_4.backtrace-sys = + (f.backtrace_0_3_4.backtrace-sys or false) || + (f.backtrace_0_3_4.libbacktrace or false) || + (backtrace_0_3_4.libbacktrace or false); + backtrace_0_3_4.coresymbolication = + (f.backtrace_0_3_4.coresymbolication or false) || + (f.backtrace_0_3_4.default or false) || + (backtrace_0_3_4.default or false); + backtrace_0_3_4.dbghelp = + (f.backtrace_0_3_4.dbghelp or false) || + (f.backtrace_0_3_4.default or false) || + (backtrace_0_3_4.default or false); + backtrace_0_3_4.dbghelp-sys = + (f.backtrace_0_3_4.dbghelp-sys or false) || + (f.backtrace_0_3_4.dbghelp or false) || + (backtrace_0_3_4.dbghelp or false); + backtrace_0_3_4.default = (f.backtrace_0_3_4.default or true); + backtrace_0_3_4.dladdr = + (f.backtrace_0_3_4.dladdr or false) || + (f.backtrace_0_3_4.default or false) || + (backtrace_0_3_4.default or false); + backtrace_0_3_4.findshlibs = + (f.backtrace_0_3_4.findshlibs or false) || + (f.backtrace_0_3_4.gimli-symbolize or false) || + (backtrace_0_3_4.gimli-symbolize or false); + backtrace_0_3_4.kernel32-sys = + (f.backtrace_0_3_4.kernel32-sys or false) || + (f.backtrace_0_3_4.dbghelp or false) || + (backtrace_0_3_4.dbghelp or false); + backtrace_0_3_4.libbacktrace = + (f.backtrace_0_3_4.libbacktrace or false) || + (f.backtrace_0_3_4.default or false) || + (backtrace_0_3_4.default or false); + backtrace_0_3_4.libunwind = + (f.backtrace_0_3_4.libunwind or false) || + (f.backtrace_0_3_4.default or false) || + (backtrace_0_3_4.default or false); + backtrace_0_3_4.rustc-serialize = + (f.backtrace_0_3_4.rustc-serialize or false) || + (f.backtrace_0_3_4.serialize-rustc or false) || + (backtrace_0_3_4.serialize-rustc or false); + backtrace_0_3_4.serde = + (f.backtrace_0_3_4.serde or false) || + (f.backtrace_0_3_4.serialize-serde or false) || + (backtrace_0_3_4.serialize-serde or false); + backtrace_0_3_4.serde_derive = + (f.backtrace_0_3_4.serde_derive or false) || + (f.backtrace_0_3_4.serialize-serde or false) || + (backtrace_0_3_4.serialize-serde or false); + backtrace_0_3_4.winapi = + (f.backtrace_0_3_4.winapi or false) || + (f.backtrace_0_3_4.dbghelp or false) || + (backtrace_0_3_4.dbghelp or false); + backtrace_sys_0_1_16.default = true; + cfg_if_0_1_2.default = true; + dbghelp_sys_0_2_0.default = true; + kernel32_sys_0_2_2.default = true; + libc_0_2_33.default = true; + rustc_demangle_0_1_5.default = true; + winapi_0_2_8.default = true; + }) [ cfg_if_0_1_2_features rustc_demangle_0_1_5_features backtrace_sys_0_1_16_features libc_0_2_33_features dbghelp_sys_0_2_0_features kernel32_sys_0_2_2_features winapi_0_2_8_features ]; + backtrace_sys_0_1_16 = { features?(backtrace_sys_0_1_16_features {}) }: backtrace_sys_0_1_16_ { + dependencies = mapFeatures features ([ libc_0_2_33 ]); + buildDependencies = mapFeatures features ([ cc_1_0_3 ]); }; - bitflags_1_0_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - bitflags_1_0_1."example_generated".self_default = hasFeature (bitflags_1_0_1.default or {}) || hasFeature (features.bitflags_1_0_1.default or {}); - })) - [ ]; - carnix_0_6_0 = f: carnix_0_6_0_ rec { - dependencies = [ (clap_2_28_0 f) (env_logger_0_4_3 f) (error_chain_0_11_0 f) (itertools_0_7_3 f) (log_0_3_8 f) (nom_3_2_1 f) (regex_0_2_2 f) (rusqlite_0_13_0 f) (serde_1_0_21 f) (serde_derive_1_0_21 f) (serde_json_1_0_6 f) (tempdir_0_3_5 f) (toml_0_4_5 f) ]; + backtrace_sys_0_1_16_features = f: updateFeatures f (rec { + backtrace_sys_0_1_16.default = (f.backtrace_sys_0_1_16.default or true); + cc_1_0_3.default = true; + libc_0_2_33.default = true; + }) [ libc_0_2_33_features cc_1_0_3_features ]; + bitflags_0_7_0 = { features?(bitflags_0_7_0_features {}) }: bitflags_0_7_0_ {}; + bitflags_0_7_0_features = f: updateFeatures f (rec { + bitflags_0_7_0.default = (f.bitflags_0_7_0.default or true); + }) []; + bitflags_1_0_1 = { features?(bitflags_1_0_1_features {}) }: bitflags_1_0_1_ { + features = mkFeatures (features.bitflags_1_0_1 or {}); }; - carnix_0_6_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - clap_2_28_0.default.from_carnix_0_6_0__default_ = true; - env_logger_0_4_3.default.from_carnix_0_6_0__default_ = true; - error_chain_0_11_0.default.from_carnix_0_6_0__default_ = true; - itertools_0_7_3.default.from_carnix_0_6_0__default_ = true; - log_0_3_8.default.from_carnix_0_6_0__default_ = true; - nom_3_2_1.default.from_carnix_0_6_0__default_ = true; - regex_0_2_2.default.from_carnix_0_6_0__default_ = true; - rusqlite_0_13_0.default.from_carnix_0_6_0__default_ = true; - serde_1_0_21.default.from_carnix_0_6_0__default_ = true; - serde_derive_1_0_21.default.from_carnix_0_6_0__default_ = true; - serde_json_1_0_6.default.from_carnix_0_6_0__default_ = true; - tempdir_0_3_5.default.from_carnix_0_6_0__default_ = true; - toml_0_4_5.default.from_carnix_0_6_0__default_ = true; - })) - [ clap_2_28_0_features env_logger_0_4_3_features error_chain_0_11_0_features itertools_0_7_3_features log_0_3_8_features nom_3_2_1_features regex_0_2_2_features rusqlite_0_13_0_features serde_1_0_21_features serde_derive_1_0_21_features serde_json_1_0_6_features tempdir_0_3_5_features toml_0_4_5_features ]; - cc_1_0_3 = f: cc_1_0_3_ rec { - dependencies = []; - features = mkFeatures (f.cc_1_0_3 or {}); + bitflags_1_0_1_features = f: updateFeatures f (rec { + bitflags_1_0_1.default = (f.bitflags_1_0_1.default or true); + bitflags_1_0_1.example_generated = + (f.bitflags_1_0_1.example_generated or false) || + (f.bitflags_1_0_1.default or false) || + (bitflags_1_0_1.default or false); + }) []; + carnix_0_6_5 = { features?(carnix_0_6_5_features {}) }: carnix_0_6_5_ { + dependencies = mapFeatures features ([ clap_2_28_0 env_logger_0_5_3 error_chain_0_11_0 itertools_0_7_3 log_0_4_1 nom_3_2_1 regex_0_2_2 rusqlite_0_13_0 serde_1_0_21 serde_derive_1_0_21 serde_json_1_0_6 tempdir_0_3_5 toml_0_4_5 ]); }; - cc_1_0_3_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - cc_1_0_3."rayon".self_parallel = hasFeature (cc_1_0_3."parallel" or {}) || hasFeature (features.cc_1_0_3."parallel" or {}); - })) - [ ]; - cfg_if_0_1_2 = f: cfg_if_0_1_2_ rec {}; - cfg_if_0_1_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - clap_2_28_0 = f: clap_2_28_0_ rec { - dependencies = [ (bitflags_1_0_1 f) (textwrap_0_9_0 f) (unicode_width_0_1_4 f) ] - ++ (if hasFeature (f.clap_2_28_0."ansi_term" or {}) then [(ansi_term_0_10_2 f)] else []) - ++ (if hasFeature (f.clap_2_28_0."atty" or {}) then [(atty_0_2_3 f)] else []) - ++ (if hasFeature (f.clap_2_28_0."strsim" or {}) then [(strsim_0_6_0 f)] else []) - ++ (if hasFeature (f.clap_2_28_0."vec_map" or {}) then [(vec_map_0_8_0 f)] else []); - features = mkFeatures (f.clap_2_28_0 or {}); + carnix_0_6_5_features = f: updateFeatures f (rec { + carnix_0_6_5.default = (f.carnix_0_6_5.default or true); + clap_2_28_0.default = true; + env_logger_0_5_3.default = true; + error_chain_0_11_0.default = true; + itertools_0_7_3.default = true; + log_0_4_1.default = true; + nom_3_2_1.default = true; + regex_0_2_2.default = true; + rusqlite_0_13_0.default = true; + serde_1_0_21.default = true; + serde_derive_1_0_21.default = true; + serde_json_1_0_6.default = true; + tempdir_0_3_5.default = true; + toml_0_4_5.default = true; + }) [ clap_2_28_0_features env_logger_0_5_3_features error_chain_0_11_0_features itertools_0_7_3_features log_0_4_1_features nom_3_2_1_features regex_0_2_2_features rusqlite_0_13_0_features serde_1_0_21_features serde_derive_1_0_21_features serde_json_1_0_6_features tempdir_0_3_5_features toml_0_4_5_features ]; + cc_1_0_3 = { features?(cc_1_0_3_features {}) }: cc_1_0_3_ { + dependencies = mapFeatures features ([]); + features = mkFeatures (features.cc_1_0_3 or {}); }; - clap_2_28_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - clap_2_28_0."ansi_term".self_color = hasFeature (clap_2_28_0."color" or {}) || hasFeature (features.clap_2_28_0."color" or {}); - clap_2_28_0."atty".self_color = hasFeature (clap_2_28_0."color" or {}) || hasFeature (features.clap_2_28_0."color" or {}); - clap_2_28_0."suggestions".self_default = hasFeature (clap_2_28_0.default or {}) || hasFeature (features.clap_2_28_0.default or {}); - clap_2_28_0."color".self_default = hasFeature (clap_2_28_0.default or {}) || hasFeature (features.clap_2_28_0.default or {}); - clap_2_28_0."vec_map".self_default = hasFeature (clap_2_28_0.default or {}) || hasFeature (features.clap_2_28_0.default or {}); - clap_2_28_0."yaml".self_doc = hasFeature (clap_2_28_0."doc" or {}) || hasFeature (features.clap_2_28_0."doc" or {}); - clap_2_28_0."clippy".self_lints = hasFeature (clap_2_28_0."lints" or {}) || hasFeature (features.clap_2_28_0."lints" or {}); - clap_2_28_0."strsim".self_suggestions = hasFeature (clap_2_28_0."suggestions" or {}) || hasFeature (features.clap_2_28_0."suggestions" or {}); - clap_2_28_0."term_size".self_wrap_help = hasFeature (clap_2_28_0."wrap_help" or {}) || hasFeature (features.clap_2_28_0."wrap_help" or {}); - clap_2_28_0."yaml-rust".self_yaml = hasFeature (clap_2_28_0."yaml" or {}) || hasFeature (features.clap_2_28_0."yaml" or {}); - textwrap_0_9_0."term_size".from_clap_2_28_0__term_size = hasFeature (clap_2_28_0."wrap_help" or {}) || hasFeature (features.clap_2_28_0."wrap_help" or {}); - ansi_term_0_10_2.default.from_clap_2_28_0__default_ = true; - atty_0_2_3.default.from_clap_2_28_0__default_ = true; - bitflags_1_0_1.default.from_clap_2_28_0__default_ = true; - strsim_0_6_0.default.from_clap_2_28_0__default_ = true; - textwrap_0_9_0.default.from_clap_2_28_0__default_ = true; - unicode_width_0_1_4.default.from_clap_2_28_0__default_ = true; - vec_map_0_8_0.default.from_clap_2_28_0__default_ = true; - })) - [ ansi_term_0_10_2_features atty_0_2_3_features bitflags_1_0_1_features strsim_0_6_0_features textwrap_0_9_0_features unicode_width_0_1_4_features vec_map_0_8_0_features ]; - dbghelp_sys_0_2_0 = f: dbghelp_sys_0_2_0_ rec { - dependencies = [ (winapi_0_2_8 f) ]; - buildDependencies = [ (winapi_build_0_1_1 f) ]; + cc_1_0_3_features = f: updateFeatures f (rec { + cc_1_0_3.default = (f.cc_1_0_3.default or true); + cc_1_0_3.rayon = + (f.cc_1_0_3.rayon or false) || + (f.cc_1_0_3.parallel or false) || + (cc_1_0_3.parallel or false); + }) []; + cfg_if_0_1_2 = { features?(cfg_if_0_1_2_features {}) }: cfg_if_0_1_2_ {}; + cfg_if_0_1_2_features = f: updateFeatures f (rec { + cfg_if_0_1_2.default = (f.cfg_if_0_1_2.default or true); + }) []; + chrono_0_4_0 = { features?(chrono_0_4_0_features {}) }: chrono_0_4_0_ { + dependencies = mapFeatures features ([ num_0_1_40 time_0_1_38 ]); }; - dbghelp_sys_0_2_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - winapi_0_2_8.default.from_dbghelp_sys_0_2_0__default_ = true; - winapi_build_0_1_1.default.from_dbghelp_sys_0_2_0__default_ = true; - })) - [ winapi_0_2_8_features winapi_build_0_1_1_features ]; - dtoa_0_4_2 = f: dtoa_0_4_2_ rec {}; - dtoa_0_4_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - either_1_4_0 = f: either_1_4_0_ rec { - dependencies = []; - features = mkFeatures (f.either_1_4_0 or {}); + chrono_0_4_0_features = f: updateFeatures f (rec { + chrono_0_4_0.default = (f.chrono_0_4_0.default or true); + num_0_1_40.default = (f.num_0_1_40.default or false); + time_0_1_38.default = true; + }) [ num_0_1_40_features time_0_1_38_features ]; + clap_2_28_0 = { features?(clap_2_28_0_features {}) }: clap_2_28_0_ { + dependencies = mapFeatures features ([ bitflags_1_0_1 textwrap_0_9_0 unicode_width_0_1_4 ] + ++ (if features.clap_2_28_0.ansi_term or false then [ ansi_term_0_10_2 ] else []) + ++ (if features.clap_2_28_0.atty or false then [ atty_0_2_3 ] else []) + ++ (if features.clap_2_28_0.strsim or false then [ strsim_0_6_0 ] else []) + ++ (if features.clap_2_28_0.vec_map or false then [ vec_map_0_8_0 ] else [])); + features = mkFeatures (features.clap_2_28_0 or {}); }; - either_1_4_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - either_1_4_0."use_std".self_default = hasFeature (either_1_4_0.default or {}) || hasFeature (features.either_1_4_0.default or {}); - })) - [ ]; - env_logger_0_4_3 = f: env_logger_0_4_3_ rec { - dependencies = [ (log_0_3_8 f) ] - ++ (if hasFeature (f.env_logger_0_4_3."regex" or {}) then [(regex_0_2_2 f)] else []); - features = mkFeatures (f.env_logger_0_4_3 or {}); + clap_2_28_0_features = f: updateFeatures f (rec { + ansi_term_0_10_2.default = true; + atty_0_2_3.default = true; + bitflags_1_0_1.default = true; + clap_2_28_0.ansi_term = + (f.clap_2_28_0.ansi_term or false) || + (f.clap_2_28_0.color or false) || + (clap_2_28_0.color or false); + clap_2_28_0.atty = + (f.clap_2_28_0.atty or false) || + (f.clap_2_28_0.color or false) || + (clap_2_28_0.color or false); + clap_2_28_0.clippy = + (f.clap_2_28_0.clippy or false) || + (f.clap_2_28_0.lints or false) || + (clap_2_28_0.lints or false); + clap_2_28_0.color = + (f.clap_2_28_0.color or false) || + (f.clap_2_28_0.default or false) || + (clap_2_28_0.default or false); + clap_2_28_0.default = (f.clap_2_28_0.default or true); + clap_2_28_0.strsim = + (f.clap_2_28_0.strsim or false) || + (f.clap_2_28_0.suggestions or false) || + (clap_2_28_0.suggestions or false); + clap_2_28_0.suggestions = + (f.clap_2_28_0.suggestions or false) || + (f.clap_2_28_0.default or false) || + (clap_2_28_0.default or false); + clap_2_28_0.term_size = + (f.clap_2_28_0.term_size or false) || + (f.clap_2_28_0.wrap_help or false) || + (clap_2_28_0.wrap_help or false); + clap_2_28_0.vec_map = + (f.clap_2_28_0.vec_map or false) || + (f.clap_2_28_0.default or false) || + (clap_2_28_0.default or false); + clap_2_28_0.yaml = + (f.clap_2_28_0.yaml or false) || + (f.clap_2_28_0.doc or false) || + (clap_2_28_0.doc or false); + clap_2_28_0.yaml-rust = + (f.clap_2_28_0.yaml-rust or false) || + (f.clap_2_28_0.yaml or false) || + (clap_2_28_0.yaml or false); + strsim_0_6_0.default = true; + textwrap_0_9_0.default = true; + textwrap_0_9_0.term_size = + (f.textwrap_0_9_0.term_size or false) || + (clap_2_28_0.wrap_help or false) || + (f.clap_2_28_0.wrap_help or false); + unicode_width_0_1_4.default = true; + vec_map_0_8_0.default = true; + }) [ ansi_term_0_10_2_features atty_0_2_3_features bitflags_1_0_1_features strsim_0_6_0_features textwrap_0_9_0_features unicode_width_0_1_4_features vec_map_0_8_0_features ]; + dbghelp_sys_0_2_0 = { features?(dbghelp_sys_0_2_0_features {}) }: dbghelp_sys_0_2_0_ { + dependencies = mapFeatures features ([ winapi_0_2_8 ]); + buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]); }; - env_logger_0_4_3_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - env_logger_0_4_3."regex".self_default = hasFeature (env_logger_0_4_3.default or {}) || hasFeature (features.env_logger_0_4_3.default or {}); - log_0_3_8.default.from_env_logger_0_4_3__default_ = true; - regex_0_2_2.default.from_env_logger_0_4_3__default_ = true; - })) - [ log_0_3_8_features regex_0_2_2_features ]; - error_chain_0_11_0 = f: error_chain_0_11_0_ rec { - dependencies = [ ] - ++ (if hasFeature (f.error_chain_0_11_0."backtrace" or {}) then [(backtrace_0_3_4 f)] else []); - features = mkFeatures (f.error_chain_0_11_0 or {}); + dbghelp_sys_0_2_0_features = f: updateFeatures f (rec { + dbghelp_sys_0_2_0.default = (f.dbghelp_sys_0_2_0.default or true); + winapi_0_2_8.default = true; + winapi_build_0_1_1.default = true; + }) [ winapi_0_2_8_features winapi_build_0_1_1_features ]; + dtoa_0_4_2 = { features?(dtoa_0_4_2_features {}) }: dtoa_0_4_2_ {}; + dtoa_0_4_2_features = f: updateFeatures f (rec { + dtoa_0_4_2.default = (f.dtoa_0_4_2.default or true); + }) []; + either_1_4_0 = { features?(either_1_4_0_features {}) }: either_1_4_0_ { + dependencies = mapFeatures features ([]); + features = mkFeatures (features.either_1_4_0 or {}); }; - error_chain_0_11_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - error_chain_0_11_0."backtrace".self_default = hasFeature (error_chain_0_11_0.default or {}) || hasFeature (features.error_chain_0_11_0.default or {}); - error_chain_0_11_0."example_generated".self_default = hasFeature (error_chain_0_11_0.default or {}) || hasFeature (features.error_chain_0_11_0.default or {}); - backtrace_0_3_4.default.from_error_chain_0_11_0__default_ = true; - })) - [ backtrace_0_3_4_features ]; - fuchsia_zircon_0_2_1 = f: fuchsia_zircon_0_2_1_ rec { - dependencies = [ (fuchsia_zircon_sys_0_2_0 f) ]; + either_1_4_0_features = f: updateFeatures f (rec { + either_1_4_0.default = (f.either_1_4_0.default or true); + either_1_4_0.use_std = + (f.either_1_4_0.use_std or false) || + (f.either_1_4_0.default or false) || + (either_1_4_0.default or false); + }) []; + env_logger_0_5_3 = { features?(env_logger_0_5_3_features {}) }: env_logger_0_5_3_ { + dependencies = mapFeatures features ([ atty_0_2_3 chrono_0_4_0 log_0_4_1 termcolor_0_3_3 ] + ++ (if features.env_logger_0_5_3.regex or false then [ regex_0_2_2 ] else [])); + features = mkFeatures (features.env_logger_0_5_3 or {}); }; - fuchsia_zircon_0_2_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - fuchsia_zircon_sys_0_2_0.default.from_fuchsia_zircon_0_2_1__default_ = true; - })) - [ fuchsia_zircon_sys_0_2_0_features ]; - fuchsia_zircon_sys_0_2_0 = f: fuchsia_zircon_sys_0_2_0_ rec { - dependencies = [ (bitflags_0_7_0 f) ]; + env_logger_0_5_3_features = f: updateFeatures f (rec { + atty_0_2_3.default = true; + chrono_0_4_0.default = true; + env_logger_0_5_3.default = (f.env_logger_0_5_3.default or true); + env_logger_0_5_3.regex = + (f.env_logger_0_5_3.regex or false) || + (f.env_logger_0_5_3.default or false) || + (env_logger_0_5_3.default or false); + log_0_4_1.default = true; + log_0_4_1.std = true; + regex_0_2_2.default = true; + termcolor_0_3_3.default = true; + }) [ atty_0_2_3_features chrono_0_4_0_features log_0_4_1_features regex_0_2_2_features termcolor_0_3_3_features ]; + error_chain_0_11_0 = { features?(error_chain_0_11_0_features {}) }: error_chain_0_11_0_ { + dependencies = mapFeatures features ([ ] + ++ (if features.error_chain_0_11_0.backtrace or false then [ backtrace_0_3_4 ] else [])); + features = mkFeatures (features.error_chain_0_11_0 or {}); }; - fuchsia_zircon_sys_0_2_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - bitflags_0_7_0.default.from_fuchsia_zircon_sys_0_2_0__default_ = true; - })) - [ bitflags_0_7_0_features ]; - itertools_0_7_3 = f: itertools_0_7_3_ rec { - dependencies = [ (either_1_4_0 f) ]; - features = mkFeatures (f.itertools_0_7_3 or {}); + error_chain_0_11_0_features = f: updateFeatures f (rec { + backtrace_0_3_4.default = true; + error_chain_0_11_0.backtrace = + (f.error_chain_0_11_0.backtrace or false) || + (f.error_chain_0_11_0.default or false) || + (error_chain_0_11_0.default or false); + error_chain_0_11_0.default = (f.error_chain_0_11_0.default or true); + error_chain_0_11_0.example_generated = + (f.error_chain_0_11_0.example_generated or false) || + (f.error_chain_0_11_0.default or false) || + (error_chain_0_11_0.default or false); + }) [ backtrace_0_3_4_features ]; + fuchsia_zircon_0_2_1 = { features?(fuchsia_zircon_0_2_1_features {}) }: fuchsia_zircon_0_2_1_ { + dependencies = mapFeatures features ([ fuchsia_zircon_sys_0_2_0 ]); }; - itertools_0_7_3_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - itertools_0_7_3."use_std".self_default = hasFeature (itertools_0_7_3.default or {}) || hasFeature (features.itertools_0_7_3.default or {}); - either_1_4_0.default.from_itertools_0_7_3__default_ = false; - })) - [ either_1_4_0_features ]; - itoa_0_3_4 = f: itoa_0_3_4_ rec { - features = mkFeatures (f.itoa_0_3_4 or {}); + fuchsia_zircon_0_2_1_features = f: updateFeatures f (rec { + fuchsia_zircon_0_2_1.default = (f.fuchsia_zircon_0_2_1.default or true); + fuchsia_zircon_sys_0_2_0.default = true; + }) [ fuchsia_zircon_sys_0_2_0_features ]; + fuchsia_zircon_sys_0_2_0 = { features?(fuchsia_zircon_sys_0_2_0_features {}) }: fuchsia_zircon_sys_0_2_0_ { + dependencies = mapFeatures features ([ bitflags_0_7_0 ]); }; - itoa_0_3_4_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - kernel32_sys_0_2_2 = f: kernel32_sys_0_2_2_ rec { - dependencies = [ (winapi_0_2_8 f) ]; - buildDependencies = [ (winapi_build_0_1_1 f) ]; + fuchsia_zircon_sys_0_2_0_features = f: updateFeatures f (rec { + bitflags_0_7_0.default = true; + fuchsia_zircon_sys_0_2_0.default = (f.fuchsia_zircon_sys_0_2_0.default or true); + }) [ bitflags_0_7_0_features ]; + itertools_0_7_3 = { features?(itertools_0_7_3_features {}) }: itertools_0_7_3_ { + dependencies = mapFeatures features ([ either_1_4_0 ]); + features = mkFeatures (features.itertools_0_7_3 or {}); }; - kernel32_sys_0_2_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - winapi_0_2_8.default.from_kernel32_sys_0_2_2__default_ = true; - winapi_build_0_1_1.default.from_kernel32_sys_0_2_2__default_ = true; - })) - [ winapi_0_2_8_features winapi_build_0_1_1_features ]; - lazy_static_0_2_11 = f: lazy_static_0_2_11_ rec { - dependencies = []; - features = mkFeatures (f.lazy_static_0_2_11 or {}); + itertools_0_7_3_features = f: updateFeatures f (rec { + either_1_4_0.default = (f.either_1_4_0.default or false); + itertools_0_7_3.default = (f.itertools_0_7_3.default or true); + itertools_0_7_3.use_std = + (f.itertools_0_7_3.use_std or false) || + (f.itertools_0_7_3.default or false) || + (itertools_0_7_3.default or false); + }) [ either_1_4_0_features ]; + itoa_0_3_4 = { features?(itoa_0_3_4_features {}) }: itoa_0_3_4_ { + features = mkFeatures (features.itoa_0_3_4 or {}); }; - lazy_static_0_2_11_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - lazy_static_0_2_11."compiletest_rs".self_compiletest = hasFeature (lazy_static_0_2_11."compiletest" or {}) || hasFeature (features.lazy_static_0_2_11."compiletest" or {}); - lazy_static_0_2_11."nightly".self_spin_no_std = hasFeature (lazy_static_0_2_11."spin_no_std" or {}) || hasFeature (features.lazy_static_0_2_11."spin_no_std" or {}); - lazy_static_0_2_11."spin".self_spin_no_std = hasFeature (lazy_static_0_2_11."spin_no_std" or {}) || hasFeature (features.lazy_static_0_2_11."spin_no_std" or {}); - })) - [ ]; - libc_0_2_33 = f: libc_0_2_33_ rec { - features = mkFeatures (f.libc_0_2_33 or {}); + itoa_0_3_4_features = f: updateFeatures f (rec { + itoa_0_3_4.default = (f.itoa_0_3_4.default or true); + }) []; + kernel32_sys_0_2_2 = { features?(kernel32_sys_0_2_2_features {}) }: kernel32_sys_0_2_2_ { + dependencies = mapFeatures features ([ winapi_0_2_8 ]); + buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]); }; - libc_0_2_33_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - libc_0_2_33."use_std".self_default = hasFeature (libc_0_2_33.default or {}) || hasFeature (features.libc_0_2_33.default or {}); - })) - [ ]; - libsqlite3_sys_0_9_0 = f: libsqlite3_sys_0_9_0_ rec { - dependencies = (if abi == "msvc" then [] else []); - buildDependencies = [ ] - ++ (if hasFeature (f.libsqlite3_sys_0_9_0."pkg-config" or {}) then [(pkg_config_0_3_9 f)] else []); - features = mkFeatures (f.libsqlite3_sys_0_9_0 or {}); + kernel32_sys_0_2_2_features = f: updateFeatures f (rec { + kernel32_sys_0_2_2.default = (f.kernel32_sys_0_2_2.default or true); + winapi_0_2_8.default = true; + winapi_build_0_1_1.default = true; + }) [ winapi_0_2_8_features winapi_build_0_1_1_features ]; + lazy_static_0_2_11 = { features?(lazy_static_0_2_11_features {}) }: lazy_static_0_2_11_ { + dependencies = mapFeatures features ([]); + features = mkFeatures (features.lazy_static_0_2_11 or {}); }; - libsqlite3_sys_0_9_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - libsqlite3_sys_0_9_0."bindgen".self_buildtime_bindgen = hasFeature (libsqlite3_sys_0_9_0."buildtime_bindgen" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."buildtime_bindgen" or {}); - libsqlite3_sys_0_9_0."pkg-config".self_buildtime_bindgen = hasFeature (libsqlite3_sys_0_9_0."buildtime_bindgen" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."buildtime_bindgen" or {}); - libsqlite3_sys_0_9_0."vcpkg".self_buildtime_bindgen = hasFeature (libsqlite3_sys_0_9_0."buildtime_bindgen" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."buildtime_bindgen" or {}); - libsqlite3_sys_0_9_0."cc".self_bundled = hasFeature (libsqlite3_sys_0_9_0."bundled" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."bundled" or {}); - libsqlite3_sys_0_9_0."min_sqlite_version_3_6_8".self_default = hasFeature (libsqlite3_sys_0_9_0.default or {}) || hasFeature (features.libsqlite3_sys_0_9_0.default or {}); - libsqlite3_sys_0_9_0."pkg-config".self_min_sqlite_version_3_6_11 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_6_11" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_6_11" or {}); - libsqlite3_sys_0_9_0."vcpkg".self_min_sqlite_version_3_6_11 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_6_11" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_6_11" or {}); - libsqlite3_sys_0_9_0."pkg-config".self_min_sqlite_version_3_6_23 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_6_23" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_6_23" or {}); - libsqlite3_sys_0_9_0."vcpkg".self_min_sqlite_version_3_6_23 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_6_23" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_6_23" or {}); - libsqlite3_sys_0_9_0."pkg-config".self_min_sqlite_version_3_6_8 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_6_8" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_6_8" or {}); - libsqlite3_sys_0_9_0."vcpkg".self_min_sqlite_version_3_6_8 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_6_8" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_6_8" or {}); - libsqlite3_sys_0_9_0."pkg-config".self_min_sqlite_version_3_7_16 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_7_16" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_7_16" or {}); - libsqlite3_sys_0_9_0."vcpkg".self_min_sqlite_version_3_7_16 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_7_16" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_7_16" or {}); - libsqlite3_sys_0_9_0."pkg-config".self_min_sqlite_version_3_7_3 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_7_3" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_7_3" or {}); - libsqlite3_sys_0_9_0."vcpkg".self_min_sqlite_version_3_7_3 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_7_3" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_7_3" or {}); - libsqlite3_sys_0_9_0."pkg-config".self_min_sqlite_version_3_7_4 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_7_4" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_7_4" or {}); - libsqlite3_sys_0_9_0."vcpkg".self_min_sqlite_version_3_7_4 = hasFeature (libsqlite3_sys_0_9_0."min_sqlite_version_3_7_4" or {}) || hasFeature (features.libsqlite3_sys_0_9_0."min_sqlite_version_3_7_4" or {}); - pkg_config_0_3_9.default.from_libsqlite3_sys_0_9_0__default_ = true; - })) - [ pkg_config_0_3_9_features ]; - linked_hash_map_0_4_2 = f: linked_hash_map_0_4_2_ rec { - dependencies = []; - features = mkFeatures (f.linked_hash_map_0_4_2 or {}); + lazy_static_0_2_11_features = f: updateFeatures f (rec { + lazy_static_0_2_11.compiletest_rs = + (f.lazy_static_0_2_11.compiletest_rs or false) || + (f.lazy_static_0_2_11.compiletest or false) || + (lazy_static_0_2_11.compiletest or false); + lazy_static_0_2_11.default = (f.lazy_static_0_2_11.default or true); + lazy_static_0_2_11.nightly = + (f.lazy_static_0_2_11.nightly or false) || + (f.lazy_static_0_2_11.spin_no_std or false) || + (lazy_static_0_2_11.spin_no_std or false); + lazy_static_0_2_11.spin = + (f.lazy_static_0_2_11.spin or false) || + (f.lazy_static_0_2_11.spin_no_std or false) || + (lazy_static_0_2_11.spin_no_std or false); + }) []; + libc_0_2_33 = { features?(libc_0_2_33_features {}) }: libc_0_2_33_ { + features = mkFeatures (features.libc_0_2_33 or {}); }; - linked_hash_map_0_4_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - linked_hash_map_0_4_2."heapsize".self_heapsize_impl = hasFeature (linked_hash_map_0_4_2."heapsize_impl" or {}) || hasFeature (features.linked_hash_map_0_4_2."heapsize_impl" or {}); - linked_hash_map_0_4_2."serde".self_serde_impl = hasFeature (linked_hash_map_0_4_2."serde_impl" or {}) || hasFeature (features.linked_hash_map_0_4_2."serde_impl" or {}); - linked_hash_map_0_4_2."serde_test".self_serde_impl = hasFeature (linked_hash_map_0_4_2."serde_impl" or {}) || hasFeature (features.linked_hash_map_0_4_2."serde_impl" or {}); - })) - [ ]; - log_0_3_8 = f: log_0_3_8_ rec { - features = mkFeatures (f.log_0_3_8 or {}); + libc_0_2_33_features = f: updateFeatures f (rec { + libc_0_2_33.default = (f.libc_0_2_33.default or true); + libc_0_2_33.use_std = + (f.libc_0_2_33.use_std or false) || + (f.libc_0_2_33.default or false) || + (libc_0_2_33.default or false); + }) []; + libsqlite3_sys_0_9_0 = { features?(libsqlite3_sys_0_9_0_features {}) }: libsqlite3_sys_0_9_0_ { + dependencies = (if abi == "msvc" then mapFeatures features ([]) else []); + buildDependencies = mapFeatures features ([ ] + ++ (if features.libsqlite3_sys_0_9_0.pkg-config or false then [ pkg_config_0_3_9 ] else [])); + features = mkFeatures (features.libsqlite3_sys_0_9_0 or {}); }; - log_0_3_8_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - log_0_3_8."use_std".self_default = hasFeature (log_0_3_8.default or {}) || hasFeature (features.log_0_3_8.default or {}); - })) - [ ]; - lru_cache_0_1_1 = f: lru_cache_0_1_1_ rec { - dependencies = [ (linked_hash_map_0_4_2 f) ]; - features = mkFeatures (f.lru_cache_0_1_1 or {}); + libsqlite3_sys_0_9_0_features = f: updateFeatures f (rec { + libsqlite3_sys_0_9_0.bindgen = + (f.libsqlite3_sys_0_9_0.bindgen or false) || + (f.libsqlite3_sys_0_9_0.buildtime_bindgen or false) || + (libsqlite3_sys_0_9_0.buildtime_bindgen or false); + libsqlite3_sys_0_9_0.cc = + (f.libsqlite3_sys_0_9_0.cc or false) || + (f.libsqlite3_sys_0_9_0.bundled or false) || + (libsqlite3_sys_0_9_0.bundled or false); + libsqlite3_sys_0_9_0.default = (f.libsqlite3_sys_0_9_0.default or true); + libsqlite3_sys_0_9_0.min_sqlite_version_3_6_8 = + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_8 or false) || + (f.libsqlite3_sys_0_9_0.default or false) || + (libsqlite3_sys_0_9_0.default or false); + libsqlite3_sys_0_9_0.pkg-config = + (f.libsqlite3_sys_0_9_0.pkg-config or false) || + (f.libsqlite3_sys_0_9_0.buildtime_bindgen or false) || + (libsqlite3_sys_0_9_0.buildtime_bindgen or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_11 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_6_11 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_23 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_6_23 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_8 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_6_8 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_16 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_7_16 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_3 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_7_3 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_4 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_7_4 or false); + libsqlite3_sys_0_9_0.vcpkg = + (f.libsqlite3_sys_0_9_0.vcpkg or false) || + (f.libsqlite3_sys_0_9_0.buildtime_bindgen or false) || + (libsqlite3_sys_0_9_0.buildtime_bindgen or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_11 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_6_11 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_23 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_6_23 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_8 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_6_8 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_16 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_7_16 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_3 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_7_3 or false) || + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_4 or false) || + (libsqlite3_sys_0_9_0.min_sqlite_version_3_7_4 or false); + pkg_config_0_3_9.default = true; + }) [ pkg_config_0_3_9_features ]; + linked_hash_map_0_4_2 = { features?(linked_hash_map_0_4_2_features {}) }: linked_hash_map_0_4_2_ { + dependencies = mapFeatures features ([]); + features = mkFeatures (features.linked_hash_map_0_4_2 or {}); }; - lru_cache_0_1_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - lru_cache_0_1_1."heapsize".self_heapsize_impl = hasFeature (lru_cache_0_1_1."heapsize_impl" or {}) || hasFeature (features.lru_cache_0_1_1."heapsize_impl" or {}); - linked_hash_map_0_4_2."heapsize_impl".from_lru_cache_0_1_1__heapsize_impl = hasFeature (lru_cache_0_1_1."heapsize_impl" or {}) || hasFeature (features.lru_cache_0_1_1."heapsize_impl" or {}); - linked_hash_map_0_4_2.default.from_lru_cache_0_1_1__default_ = true; - })) - [ linked_hash_map_0_4_2_features ]; - memchr_1_0_2 = f: memchr_1_0_2_ rec { - dependencies = [ ] - ++ (if hasFeature (f.memchr_1_0_2."libc" or {}) then [(libc_0_2_33 f)] else []); - features = mkFeatures (f.memchr_1_0_2 or {}); + linked_hash_map_0_4_2_features = f: updateFeatures f (rec { + linked_hash_map_0_4_2.default = (f.linked_hash_map_0_4_2.default or true); + linked_hash_map_0_4_2.heapsize = + (f.linked_hash_map_0_4_2.heapsize or false) || + (f.linked_hash_map_0_4_2.heapsize_impl or false) || + (linked_hash_map_0_4_2.heapsize_impl or false); + linked_hash_map_0_4_2.serde = + (f.linked_hash_map_0_4_2.serde or false) || + (f.linked_hash_map_0_4_2.serde_impl or false) || + (linked_hash_map_0_4_2.serde_impl or false); + linked_hash_map_0_4_2.serde_test = + (f.linked_hash_map_0_4_2.serde_test or false) || + (f.linked_hash_map_0_4_2.serde_impl or false) || + (linked_hash_map_0_4_2.serde_impl or false); + }) []; + log_0_4_1 = { features?(log_0_4_1_features {}) }: log_0_4_1_ { + dependencies = mapFeatures features ([ cfg_if_0_1_2 ]); + features = mkFeatures (features.log_0_4_1 or {}); }; - memchr_1_0_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - memchr_1_0_2."use_std".self_default = hasFeature (memchr_1_0_2.default or {}) || hasFeature (features.memchr_1_0_2.default or {}); - memchr_1_0_2."libc".self_default = hasFeature (memchr_1_0_2.default or {}) || hasFeature (features.memchr_1_0_2.default or {}); - memchr_1_0_2."libc".self_use_std = hasFeature (memchr_1_0_2."use_std" or {}) || hasFeature (features.memchr_1_0_2."use_std" or {}); - libc_0_2_33."use_std".from_memchr_1_0_2__use_std = hasFeature (memchr_1_0_2."use_std" or {}) || hasFeature (features.memchr_1_0_2."use_std" or {}); - libc_0_2_33.default.from_memchr_1_0_2__default_ = false; - })) - [ libc_0_2_33_features ]; - nom_3_2_1 = f: nom_3_2_1_ rec { - dependencies = [ (memchr_1_0_2 f) ]; - features = mkFeatures (f.nom_3_2_1 or {}); + log_0_4_1_features = f: updateFeatures f (rec { + cfg_if_0_1_2.default = true; + log_0_4_1.default = (f.log_0_4_1.default or true); + }) [ cfg_if_0_1_2_features ]; + lru_cache_0_1_1 = { features?(lru_cache_0_1_1_features {}) }: lru_cache_0_1_1_ { + dependencies = mapFeatures features ([ linked_hash_map_0_4_2 ]); + features = mkFeatures (features.lru_cache_0_1_1 or {}); }; - nom_3_2_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - nom_3_2_1."std".self_default = hasFeature (nom_3_2_1.default or {}) || hasFeature (features.nom_3_2_1.default or {}); - nom_3_2_1."stream".self_default = hasFeature (nom_3_2_1.default or {}) || hasFeature (features.nom_3_2_1.default or {}); - nom_3_2_1."compiler_error".self_nightly = hasFeature (nom_3_2_1."nightly" or {}) || hasFeature (features.nom_3_2_1."nightly" or {}); - nom_3_2_1."regex".self_regexp = hasFeature (nom_3_2_1."regexp" or {}) || hasFeature (features.nom_3_2_1."regexp" or {}); - nom_3_2_1."regexp".self_regexp_macros = hasFeature (nom_3_2_1."regexp_macros" or {}) || hasFeature (features.nom_3_2_1."regexp_macros" or {}); - nom_3_2_1."lazy_static".self_regexp_macros = hasFeature (nom_3_2_1."regexp_macros" or {}) || hasFeature (features.nom_3_2_1."regexp_macros" or {}); - memchr_1_0_2."use_std".from_nom_3_2_1__use_std = hasFeature (nom_3_2_1."std" or {}) || hasFeature (features.nom_3_2_1."std" or {}); - memchr_1_0_2.default.from_nom_3_2_1__default_ = false; - })) - [ memchr_1_0_2_features ]; - num_traits_0_1_40 = f: num_traits_0_1_40_ rec {}; - num_traits_0_1_40_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - pkg_config_0_3_9 = f: pkg_config_0_3_9_ rec {}; - pkg_config_0_3_9_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - quote_0_3_15 = f: quote_0_3_15_ rec {}; - quote_0_3_15_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - rand_0_3_18 = f: rand_0_3_18_ rec { - dependencies = [ (libc_0_2_33 f) ] - ++ (if kernel == "fuchsia" then [ (fuchsia_zircon_0_2_1 f) ] else []); - features = mkFeatures (f.rand_0_3_18 or {}); + lru_cache_0_1_1_features = f: updateFeatures f (rec { + linked_hash_map_0_4_2.default = true; + linked_hash_map_0_4_2.heapsize_impl = + (f.linked_hash_map_0_4_2.heapsize_impl or false) || + (lru_cache_0_1_1.heapsize_impl or false) || + (f.lru_cache_0_1_1.heapsize_impl or false); + lru_cache_0_1_1.default = (f.lru_cache_0_1_1.default or true); + lru_cache_0_1_1.heapsize = + (f.lru_cache_0_1_1.heapsize or false) || + (f.lru_cache_0_1_1.heapsize_impl or false) || + (lru_cache_0_1_1.heapsize_impl or false); + }) [ linked_hash_map_0_4_2_features ]; + memchr_1_0_2 = { features?(memchr_1_0_2_features {}) }: memchr_1_0_2_ { + dependencies = mapFeatures features ([ ] + ++ (if features.memchr_1_0_2.libc or false then [ libc_0_2_33 ] else [])); + features = mkFeatures (features.memchr_1_0_2 or {}); }; - rand_0_3_18_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - rand_0_3_18."i128_support".self_nightly = hasFeature (rand_0_3_18."nightly" or {}) || hasFeature (features.rand_0_3_18."nightly" or {}); - fuchsia_zircon_0_2_1.default.from_rand_0_3_18__default_ = true; - libc_0_2_33.default.from_rand_0_3_18__default_ = true; - })) - [ libc_0_2_33_features fuchsia_zircon_0_2_1_features ]; - redox_syscall_0_1_32 = f: redox_syscall_0_1_32_ rec {}; - redox_syscall_0_1_32_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - redox_termios_0_1_1 = f: redox_termios_0_1_1_ rec { - dependencies = [ (redox_syscall_0_1_32 f) ]; + memchr_1_0_2_features = f: updateFeatures f (rec { + libc_0_2_33.default = (f.libc_0_2_33.default or false); + libc_0_2_33.use_std = + (f.libc_0_2_33.use_std or false) || + (memchr_1_0_2.use_std or false) || + (f.memchr_1_0_2.use_std or false); + memchr_1_0_2.default = (f.memchr_1_0_2.default or true); + memchr_1_0_2.libc = + (f.memchr_1_0_2.libc or false) || + (f.memchr_1_0_2.default or false) || + (memchr_1_0_2.default or false) || + (f.memchr_1_0_2.use_std or false) || + (memchr_1_0_2.use_std or false); + memchr_1_0_2.use_std = + (f.memchr_1_0_2.use_std or false) || + (f.memchr_1_0_2.default or false) || + (memchr_1_0_2.default or false); + }) [ libc_0_2_33_features ]; + nom_3_2_1 = { features?(nom_3_2_1_features {}) }: nom_3_2_1_ { + dependencies = mapFeatures features ([ memchr_1_0_2 ]); + features = mkFeatures (features.nom_3_2_1 or {}); }; - redox_termios_0_1_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - redox_syscall_0_1_32.default.from_redox_termios_0_1_1__default_ = true; - })) - [ redox_syscall_0_1_32_features ]; - regex_0_2_2 = f: regex_0_2_2_ rec { - dependencies = [ (aho_corasick_0_6_3 f) (memchr_1_0_2 f) (regex_syntax_0_4_1 f) (thread_local_0_3_4 f) (utf8_ranges_1_0_0 f) ]; - features = mkFeatures (f.regex_0_2_2 or {}); + nom_3_2_1_features = f: updateFeatures f (rec { + memchr_1_0_2.default = (f.memchr_1_0_2.default or false); + memchr_1_0_2.use_std = + (f.memchr_1_0_2.use_std or false) || + (nom_3_2_1.std or false) || + (f.nom_3_2_1.std or false); + nom_3_2_1.compiler_error = + (f.nom_3_2_1.compiler_error or false) || + (f.nom_3_2_1.nightly or false) || + (nom_3_2_1.nightly or false); + nom_3_2_1.default = (f.nom_3_2_1.default or true); + nom_3_2_1.lazy_static = + (f.nom_3_2_1.lazy_static or false) || + (f.nom_3_2_1.regexp_macros or false) || + (nom_3_2_1.regexp_macros or false); + nom_3_2_1.regex = + (f.nom_3_2_1.regex or false) || + (f.nom_3_2_1.regexp or false) || + (nom_3_2_1.regexp or false); + nom_3_2_1.regexp = + (f.nom_3_2_1.regexp or false) || + (f.nom_3_2_1.regexp_macros or false) || + (nom_3_2_1.regexp_macros or false); + nom_3_2_1.std = + (f.nom_3_2_1.std or false) || + (f.nom_3_2_1.default or false) || + (nom_3_2_1.default or false); + nom_3_2_1.stream = + (f.nom_3_2_1.stream or false) || + (f.nom_3_2_1.default or false) || + (nom_3_2_1.default or false); + }) [ memchr_1_0_2_features ]; + num_0_1_40 = { features?(num_0_1_40_features {}) }: num_0_1_40_ { + dependencies = mapFeatures features ([ num_integer_0_1_35 num_iter_0_1_34 num_traits_0_1_40 ]); + features = mkFeatures (features.num_0_1_40 or {}); }; - regex_0_2_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - regex_0_2_2."simd".self_simd-accel = hasFeature (regex_0_2_2."simd-accel" or {}) || hasFeature (features.regex_0_2_2."simd-accel" or {}); - aho_corasick_0_6_3.default.from_regex_0_2_2__default_ = true; - memchr_1_0_2.default.from_regex_0_2_2__default_ = true; - regex_syntax_0_4_1.default.from_regex_0_2_2__default_ = true; - thread_local_0_3_4.default.from_regex_0_2_2__default_ = true; - utf8_ranges_1_0_0.default.from_regex_0_2_2__default_ = true; - })) - [ aho_corasick_0_6_3_features memchr_1_0_2_features regex_syntax_0_4_1_features thread_local_0_3_4_features utf8_ranges_1_0_0_features ]; - regex_syntax_0_4_1 = f: regex_syntax_0_4_1_ rec {}; - regex_syntax_0_4_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - rusqlite_0_13_0 = f: rusqlite_0_13_0_ rec { - dependencies = [ (bitflags_1_0_1 f) (libsqlite3_sys_0_9_0 f) (lru_cache_0_1_1 f) (time_0_1_38 f) ]; - features = mkFeatures (f.rusqlite_0_13_0 or {}); + num_0_1_40_features = f: updateFeatures f (rec { + num_0_1_40.bigint = + (f.num_0_1_40.bigint or false) || + (f.num_0_1_40.default or false) || + (num_0_1_40.default or false); + num_0_1_40.complex = + (f.num_0_1_40.complex or false) || + (f.num_0_1_40.default or false) || + (num_0_1_40.default or false); + num_0_1_40.default = (f.num_0_1_40.default or true); + num_0_1_40.num-bigint = + (f.num_0_1_40.num-bigint or false) || + (f.num_0_1_40.bigint or false) || + (num_0_1_40.bigint or false); + num_0_1_40.num-complex = + (f.num_0_1_40.num-complex or false) || + (f.num_0_1_40.complex or false) || + (num_0_1_40.complex or false); + num_0_1_40.num-rational = + (f.num_0_1_40.num-rational or false) || + (f.num_0_1_40.rational or false) || + (num_0_1_40.rational or false); + num_0_1_40.rational = + (f.num_0_1_40.rational or false) || + (f.num_0_1_40.default or false) || + (num_0_1_40.default or false); + num_0_1_40.rustc-serialize = + (f.num_0_1_40.rustc-serialize or false) || + (f.num_0_1_40.default or false) || + (num_0_1_40.default or false); + num_integer_0_1_35.default = true; + num_iter_0_1_34.default = true; + num_traits_0_1_40.default = true; + }) [ num_integer_0_1_35_features num_iter_0_1_34_features num_traits_0_1_40_features ]; + num_integer_0_1_35 = { features?(num_integer_0_1_35_features {}) }: num_integer_0_1_35_ { + dependencies = mapFeatures features ([ num_traits_0_1_40 ]); }; - rusqlite_0_13_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - libsqlite3_sys_0_9_0."min_sqlite_version_3_6_11".from_rusqlite_0_13_0__min_sqlite_version_3_6_11 = hasFeature (rusqlite_0_13_0."backup" or {}) || hasFeature (features.rusqlite_0_13_0."backup" or {}); - libsqlite3_sys_0_9_0."min_sqlite_version_3_7_4".from_rusqlite_0_13_0__min_sqlite_version_3_7_4 = hasFeature (rusqlite_0_13_0."blob" or {}) || hasFeature (features.rusqlite_0_13_0."blob" or {}); - libsqlite3_sys_0_9_0."buildtime_bindgen".from_rusqlite_0_13_0__buildtime_bindgen = hasFeature (rusqlite_0_13_0."buildtime_bindgen" or {}) || hasFeature (features.rusqlite_0_13_0."buildtime_bindgen" or {}); - libsqlite3_sys_0_9_0."bundled".from_rusqlite_0_13_0__bundled = hasFeature (rusqlite_0_13_0."bundled" or {}) || hasFeature (features.rusqlite_0_13_0."bundled" or {}); - libsqlite3_sys_0_9_0."min_sqlite_version_3_7_3".from_rusqlite_0_13_0__min_sqlite_version_3_7_3 = hasFeature (rusqlite_0_13_0."functions" or {}) || hasFeature (features.rusqlite_0_13_0."functions" or {}); - libsqlite3_sys_0_9_0."sqlcipher".from_rusqlite_0_13_0__sqlcipher = hasFeature (rusqlite_0_13_0."sqlcipher" or {}) || hasFeature (features.rusqlite_0_13_0."sqlcipher" or {}); - libsqlite3_sys_0_9_0."min_sqlite_version_3_6_23".from_rusqlite_0_13_0__min_sqlite_version_3_6_23 = hasFeature (rusqlite_0_13_0."trace" or {}) || hasFeature (features.rusqlite_0_13_0."trace" or {}); - bitflags_1_0_1.default.from_rusqlite_0_13_0__default_ = true; - libsqlite3_sys_0_9_0.default.from_rusqlite_0_13_0__default_ = true; - lru_cache_0_1_1.default.from_rusqlite_0_13_0__default_ = true; - time_0_1_38.default.from_rusqlite_0_13_0__default_ = true; - })) - [ bitflags_1_0_1_features libsqlite3_sys_0_9_0_features lru_cache_0_1_1_features time_0_1_38_features ]; - rustc_demangle_0_1_5 = f: rustc_demangle_0_1_5_ rec {}; - rustc_demangle_0_1_5_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - serde_1_0_21 = f: serde_1_0_21_ rec { - dependencies = []; - features = mkFeatures (f.serde_1_0_21 or {}); + num_integer_0_1_35_features = f: updateFeatures f (rec { + num_integer_0_1_35.default = (f.num_integer_0_1_35.default or true); + num_traits_0_1_40.default = true; + }) [ num_traits_0_1_40_features ]; + num_iter_0_1_34 = { features?(num_iter_0_1_34_features {}) }: num_iter_0_1_34_ { + dependencies = mapFeatures features ([ num_integer_0_1_35 num_traits_0_1_40 ]); }; - serde_1_0_21_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - serde_1_0_21."unstable".self_alloc = hasFeature (serde_1_0_21."alloc" or {}) || hasFeature (features.serde_1_0_21."alloc" or {}); - serde_1_0_21."std".self_default = hasFeature (serde_1_0_21.default or {}) || hasFeature (features.serde_1_0_21.default or {}); - serde_1_0_21."serde_derive".self_derive = hasFeature (serde_1_0_21."derive" or {}) || hasFeature (features.serde_1_0_21."derive" or {}); - serde_1_0_21."serde_derive".self_playground = hasFeature (serde_1_0_21."playground" or {}) || hasFeature (features.serde_1_0_21."playground" or {}); - })) - [ ]; - serde_derive_1_0_21 = f: serde_derive_1_0_21_ rec { - dependencies = [ (quote_0_3_15 f) (serde_derive_internals_0_17_0 f) (syn_0_11_11 f) ]; + num_iter_0_1_34_features = f: updateFeatures f (rec { + num_integer_0_1_35.default = true; + num_iter_0_1_34.default = (f.num_iter_0_1_34.default or true); + num_traits_0_1_40.default = true; + }) [ num_integer_0_1_35_features num_traits_0_1_40_features ]; + num_traits_0_1_40 = { features?(num_traits_0_1_40_features {}) }: num_traits_0_1_40_ {}; + num_traits_0_1_40_features = f: updateFeatures f (rec { + num_traits_0_1_40.default = (f.num_traits_0_1_40.default or true); + }) []; + pkg_config_0_3_9 = { features?(pkg_config_0_3_9_features {}) }: pkg_config_0_3_9_ {}; + pkg_config_0_3_9_features = f: updateFeatures f (rec { + pkg_config_0_3_9.default = (f.pkg_config_0_3_9.default or true); + }) []; + quote_0_3_15 = { features?(quote_0_3_15_features {}) }: quote_0_3_15_ {}; + quote_0_3_15_features = f: updateFeatures f (rec { + quote_0_3_15.default = (f.quote_0_3_15.default or true); + }) []; + rand_0_3_18 = { features?(rand_0_3_18_features {}) }: rand_0_3_18_ { + dependencies = mapFeatures features ([ libc_0_2_33 ]) + ++ (if kernel == "fuchsia" then mapFeatures features ([ fuchsia_zircon_0_2_1 ]) else []); + features = mkFeatures (features.rand_0_3_18 or {}); }; - serde_derive_1_0_21_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - syn_0_11_11."visit".from_serde_derive_1_0_21 = true; - quote_0_3_15.default.from_serde_derive_1_0_21__default_ = true; - serde_derive_internals_0_17_0.default.from_serde_derive_1_0_21__default_ = false; - syn_0_11_11.default.from_serde_derive_1_0_21__default_ = true; - })) - [ quote_0_3_15_features serde_derive_internals_0_17_0_features syn_0_11_11_features ]; - serde_derive_internals_0_17_0 = f: serde_derive_internals_0_17_0_ rec { - dependencies = [ (syn_0_11_11 f) (synom_0_11_3 f) ]; + rand_0_3_18_features = f: updateFeatures f (rec { + fuchsia_zircon_0_2_1.default = true; + libc_0_2_33.default = true; + rand_0_3_18.default = (f.rand_0_3_18.default or true); + rand_0_3_18.i128_support = + (f.rand_0_3_18.i128_support or false) || + (f.rand_0_3_18.nightly or false) || + (rand_0_3_18.nightly or false); + }) [ libc_0_2_33_features fuchsia_zircon_0_2_1_features ]; + redox_syscall_0_1_32 = { features?(redox_syscall_0_1_32_features {}) }: redox_syscall_0_1_32_ {}; + redox_syscall_0_1_32_features = f: updateFeatures f (rec { + redox_syscall_0_1_32.default = (f.redox_syscall_0_1_32.default or true); + }) []; + redox_termios_0_1_1 = { features?(redox_termios_0_1_1_features {}) }: redox_termios_0_1_1_ { + dependencies = mapFeatures features ([ redox_syscall_0_1_32 ]); }; - serde_derive_internals_0_17_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - syn_0_11_11."parsing".from_serde_derive_internals_0_17_0 = true; - syn_0_11_11.default.from_serde_derive_internals_0_17_0__default_ = false; - synom_0_11_3.default.from_serde_derive_internals_0_17_0__default_ = true; - })) - [ syn_0_11_11_features synom_0_11_3_features ]; - serde_json_1_0_6 = f: serde_json_1_0_6_ rec { - dependencies = [ (dtoa_0_4_2 f) (itoa_0_3_4 f) (num_traits_0_1_40 f) (serde_1_0_21 f) ]; - features = mkFeatures (f.serde_json_1_0_6 or {}); + redox_termios_0_1_1_features = f: updateFeatures f (rec { + redox_syscall_0_1_32.default = true; + redox_termios_0_1_1.default = (f.redox_termios_0_1_1.default or true); + }) [ redox_syscall_0_1_32_features ]; + regex_0_2_2 = { features?(regex_0_2_2_features {}) }: regex_0_2_2_ { + dependencies = mapFeatures features ([ aho_corasick_0_6_3 memchr_1_0_2 regex_syntax_0_4_1 thread_local_0_3_4 utf8_ranges_1_0_0 ]); + features = mkFeatures (features.regex_0_2_2 or {}); }; - serde_json_1_0_6_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - serde_json_1_0_6."linked-hash-map".self_preserve_order = hasFeature (serde_json_1_0_6."preserve_order" or {}) || hasFeature (features.serde_json_1_0_6."preserve_order" or {}); - dtoa_0_4_2.default.from_serde_json_1_0_6__default_ = true; - itoa_0_3_4.default.from_serde_json_1_0_6__default_ = true; - num_traits_0_1_40.default.from_serde_json_1_0_6__default_ = true; - serde_1_0_21.default.from_serde_json_1_0_6__default_ = true; - })) - [ dtoa_0_4_2_features itoa_0_3_4_features num_traits_0_1_40_features serde_1_0_21_features ]; - strsim_0_6_0 = f: strsim_0_6_0_ rec {}; - strsim_0_6_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - syn_0_11_11 = f: syn_0_11_11_ rec { - dependencies = [ ] - ++ (if hasFeature (f.syn_0_11_11."quote" or {}) then [(quote_0_3_15 f)] else []) - ++ (if hasFeature (f.syn_0_11_11."synom" or {}) then [(synom_0_11_3 f)] else []) - ++ (if hasFeature (f.syn_0_11_11."unicode-xid" or {}) then [(unicode_xid_0_0_4 f)] else []); - features = mkFeatures (f.syn_0_11_11 or {}); + regex_0_2_2_features = f: updateFeatures f (rec { + aho_corasick_0_6_3.default = true; + memchr_1_0_2.default = true; + regex_0_2_2.default = (f.regex_0_2_2.default or true); + regex_0_2_2.simd = + (f.regex_0_2_2.simd or false) || + (f.regex_0_2_2.simd-accel or false) || + (regex_0_2_2.simd-accel or false); + regex_syntax_0_4_1.default = true; + thread_local_0_3_4.default = true; + utf8_ranges_1_0_0.default = true; + }) [ aho_corasick_0_6_3_features memchr_1_0_2_features regex_syntax_0_4_1_features thread_local_0_3_4_features utf8_ranges_1_0_0_features ]; + regex_syntax_0_4_1 = { features?(regex_syntax_0_4_1_features {}) }: regex_syntax_0_4_1_ {}; + regex_syntax_0_4_1_features = f: updateFeatures f (rec { + regex_syntax_0_4_1.default = (f.regex_syntax_0_4_1.default or true); + }) []; + rusqlite_0_13_0 = { features?(rusqlite_0_13_0_features {}) }: rusqlite_0_13_0_ { + dependencies = mapFeatures features ([ bitflags_1_0_1 libsqlite3_sys_0_9_0 lru_cache_0_1_1 time_0_1_38 ]); + features = mkFeatures (features.rusqlite_0_13_0 or {}); }; - syn_0_11_11_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - syn_0_11_11."parsing".self_default = hasFeature (syn_0_11_11.default or {}) || hasFeature (features.syn_0_11_11.default or {}); - syn_0_11_11."printing".self_default = hasFeature (syn_0_11_11.default or {}) || hasFeature (features.syn_0_11_11.default or {}); - syn_0_11_11."unicode-xid".self_parsing = hasFeature (syn_0_11_11."parsing" or {}) || hasFeature (features.syn_0_11_11."parsing" or {}); - syn_0_11_11."synom".self_parsing = hasFeature (syn_0_11_11."parsing" or {}) || hasFeature (features.syn_0_11_11."parsing" or {}); - syn_0_11_11."quote".self_printing = hasFeature (syn_0_11_11."printing" or {}) || hasFeature (features.syn_0_11_11."printing" or {}); - quote_0_3_15.default.from_syn_0_11_11__default_ = true; - synom_0_11_3.default.from_syn_0_11_11__default_ = true; - unicode_xid_0_0_4.default.from_syn_0_11_11__default_ = true; - })) - [ quote_0_3_15_features synom_0_11_3_features unicode_xid_0_0_4_features ]; - synom_0_11_3 = f: synom_0_11_3_ rec { - dependencies = [ (unicode_xid_0_0_4 f) ]; + rusqlite_0_13_0_features = f: updateFeatures f (rec { + bitflags_1_0_1.default = true; + libsqlite3_sys_0_9_0.buildtime_bindgen = + (f.libsqlite3_sys_0_9_0.buildtime_bindgen or false) || + (rusqlite_0_13_0.buildtime_bindgen or false) || + (f.rusqlite_0_13_0.buildtime_bindgen or false); + libsqlite3_sys_0_9_0.bundled = + (f.libsqlite3_sys_0_9_0.bundled or false) || + (rusqlite_0_13_0.bundled or false) || + (f.rusqlite_0_13_0.bundled or false); + libsqlite3_sys_0_9_0.default = true; + libsqlite3_sys_0_9_0.min_sqlite_version_3_6_11 = + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_11 or false) || + (rusqlite_0_13_0.backup or false) || + (f.rusqlite_0_13_0.backup or false); + libsqlite3_sys_0_9_0.min_sqlite_version_3_6_23 = + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_6_23 or false) || + (rusqlite_0_13_0.trace or false) || + (f.rusqlite_0_13_0.trace or false); + libsqlite3_sys_0_9_0.min_sqlite_version_3_7_3 = + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_3 or false) || + (rusqlite_0_13_0.functions or false) || + (f.rusqlite_0_13_0.functions or false); + libsqlite3_sys_0_9_0.min_sqlite_version_3_7_4 = + (f.libsqlite3_sys_0_9_0.min_sqlite_version_3_7_4 or false) || + (rusqlite_0_13_0.blob or false) || + (f.rusqlite_0_13_0.blob or false); + libsqlite3_sys_0_9_0.sqlcipher = + (f.libsqlite3_sys_0_9_0.sqlcipher or false) || + (rusqlite_0_13_0.sqlcipher or false) || + (f.rusqlite_0_13_0.sqlcipher or false); + lru_cache_0_1_1.default = true; + rusqlite_0_13_0.default = (f.rusqlite_0_13_0.default or true); + time_0_1_38.default = true; + }) [ bitflags_1_0_1_features libsqlite3_sys_0_9_0_features lru_cache_0_1_1_features time_0_1_38_features ]; + rustc_demangle_0_1_5 = { features?(rustc_demangle_0_1_5_features {}) }: rustc_demangle_0_1_5_ {}; + rustc_demangle_0_1_5_features = f: updateFeatures f (rec { + rustc_demangle_0_1_5.default = (f.rustc_demangle_0_1_5.default or true); + }) []; + serde_1_0_21 = { features?(serde_1_0_21_features {}) }: serde_1_0_21_ { + dependencies = mapFeatures features ([]); + features = mkFeatures (features.serde_1_0_21 or {}); }; - synom_0_11_3_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - unicode_xid_0_0_4.default.from_synom_0_11_3__default_ = true; - })) - [ unicode_xid_0_0_4_features ]; - tempdir_0_3_5 = f: tempdir_0_3_5_ rec { - dependencies = [ (rand_0_3_18 f) ]; + serde_1_0_21_features = f: updateFeatures f (rec { + serde_1_0_21.default = (f.serde_1_0_21.default or true); + serde_1_0_21.serde_derive = + (f.serde_1_0_21.serde_derive or false) || + (f.serde_1_0_21.derive or false) || + (serde_1_0_21.derive or false) || + (f.serde_1_0_21.playground or false) || + (serde_1_0_21.playground or false); + serde_1_0_21.std = + (f.serde_1_0_21.std or false) || + (f.serde_1_0_21.default or false) || + (serde_1_0_21.default or false); + serde_1_0_21.unstable = + (f.serde_1_0_21.unstable or false) || + (f.serde_1_0_21.alloc or false) || + (serde_1_0_21.alloc or false); + }) []; + serde_derive_1_0_21 = { features?(serde_derive_1_0_21_features {}) }: serde_derive_1_0_21_ { + dependencies = mapFeatures features ([ quote_0_3_15 serde_derive_internals_0_17_0 syn_0_11_11 ]); }; - tempdir_0_3_5_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - rand_0_3_18.default.from_tempdir_0_3_5__default_ = true; - })) - [ rand_0_3_18_features ]; - termion_1_5_1 = f: termion_1_5_1_ rec { - dependencies = (if !(kernel == "redox") then [ (libc_0_2_33 f) ] else []) - ++ (if kernel == "redox" then [ (redox_syscall_0_1_32 f) (redox_termios_0_1_1 f) ] else []); + serde_derive_1_0_21_features = f: updateFeatures f (rec { + quote_0_3_15.default = true; + serde_derive_1_0_21.default = (f.serde_derive_1_0_21.default or true); + serde_derive_internals_0_17_0.default = (f.serde_derive_internals_0_17_0.default or false); + syn_0_11_11.default = true; + syn_0_11_11.visit = true; + }) [ quote_0_3_15_features serde_derive_internals_0_17_0_features syn_0_11_11_features ]; + serde_derive_internals_0_17_0 = { features?(serde_derive_internals_0_17_0_features {}) }: serde_derive_internals_0_17_0_ { + dependencies = mapFeatures features ([ syn_0_11_11 synom_0_11_3 ]); }; - termion_1_5_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - libc_0_2_33.default.from_termion_1_5_1__default_ = true; - redox_syscall_0_1_32.default.from_termion_1_5_1__default_ = true; - redox_termios_0_1_1.default.from_termion_1_5_1__default_ = true; - })) - [ libc_0_2_33_features redox_syscall_0_1_32_features redox_termios_0_1_1_features ]; - textwrap_0_9_0 = f: textwrap_0_9_0_ rec { - dependencies = [ (unicode_width_0_1_4 f) ]; + serde_derive_internals_0_17_0_features = f: updateFeatures f (rec { + serde_derive_internals_0_17_0.default = (f.serde_derive_internals_0_17_0.default or true); + syn_0_11_11.default = (f.syn_0_11_11.default or false); + syn_0_11_11.parsing = true; + synom_0_11_3.default = true; + }) [ syn_0_11_11_features synom_0_11_3_features ]; + serde_json_1_0_6 = { features?(serde_json_1_0_6_features {}) }: serde_json_1_0_6_ { + dependencies = mapFeatures features ([ dtoa_0_4_2 itoa_0_3_4 num_traits_0_1_40 serde_1_0_21 ]); + features = mkFeatures (features.serde_json_1_0_6 or {}); }; - textwrap_0_9_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - unicode_width_0_1_4.default.from_textwrap_0_9_0__default_ = true; - })) - [ unicode_width_0_1_4_features ]; - thread_local_0_3_4 = f: thread_local_0_3_4_ rec { - dependencies = [ (lazy_static_0_2_11 f) (unreachable_1_0_0 f) ]; + serde_json_1_0_6_features = f: updateFeatures f (rec { + dtoa_0_4_2.default = true; + itoa_0_3_4.default = true; + num_traits_0_1_40.default = true; + serde_1_0_21.default = true; + serde_json_1_0_6.default = (f.serde_json_1_0_6.default or true); + serde_json_1_0_6.linked-hash-map = + (f.serde_json_1_0_6.linked-hash-map or false) || + (f.serde_json_1_0_6.preserve_order or false) || + (serde_json_1_0_6.preserve_order or false); + }) [ dtoa_0_4_2_features itoa_0_3_4_features num_traits_0_1_40_features serde_1_0_21_features ]; + strsim_0_6_0 = { features?(strsim_0_6_0_features {}) }: strsim_0_6_0_ {}; + strsim_0_6_0_features = f: updateFeatures f (rec { + strsim_0_6_0.default = (f.strsim_0_6_0.default or true); + }) []; + syn_0_11_11 = { features?(syn_0_11_11_features {}) }: syn_0_11_11_ { + dependencies = mapFeatures features ([ ] + ++ (if features.syn_0_11_11.quote or false then [ quote_0_3_15 ] else []) + ++ (if features.syn_0_11_11.synom or false then [ synom_0_11_3 ] else []) + ++ (if features.syn_0_11_11.unicode-xid or false then [ unicode_xid_0_0_4 ] else [])); + features = mkFeatures (features.syn_0_11_11 or {}); }; - thread_local_0_3_4_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - lazy_static_0_2_11.default.from_thread_local_0_3_4__default_ = true; - unreachable_1_0_0.default.from_thread_local_0_3_4__default_ = true; - })) - [ lazy_static_0_2_11_features unreachable_1_0_0_features ]; - time_0_1_38 = f: time_0_1_38_ rec { - dependencies = [ (libc_0_2_33 f) ] - ++ (if kernel == "redox" then [ (redox_syscall_0_1_32 f) ] else []) - ++ (if kernel == "windows" then [ (kernel32_sys_0_2_2 f) (winapi_0_2_8 f) ] else []); + syn_0_11_11_features = f: updateFeatures f (rec { + quote_0_3_15.default = true; + syn_0_11_11.default = (f.syn_0_11_11.default or true); + syn_0_11_11.parsing = + (f.syn_0_11_11.parsing or false) || + (f.syn_0_11_11.default or false) || + (syn_0_11_11.default or false); + syn_0_11_11.printing = + (f.syn_0_11_11.printing or false) || + (f.syn_0_11_11.default or false) || + (syn_0_11_11.default or false); + syn_0_11_11.quote = + (f.syn_0_11_11.quote or false) || + (f.syn_0_11_11.printing or false) || + (syn_0_11_11.printing or false); + syn_0_11_11.synom = + (f.syn_0_11_11.synom or false) || + (f.syn_0_11_11.parsing or false) || + (syn_0_11_11.parsing or false); + syn_0_11_11.unicode-xid = + (f.syn_0_11_11.unicode-xid or false) || + (f.syn_0_11_11.parsing or false) || + (syn_0_11_11.parsing or false); + synom_0_11_3.default = true; + unicode_xid_0_0_4.default = true; + }) [ quote_0_3_15_features synom_0_11_3_features unicode_xid_0_0_4_features ]; + synom_0_11_3 = { features?(synom_0_11_3_features {}) }: synom_0_11_3_ { + dependencies = mapFeatures features ([ unicode_xid_0_0_4 ]); }; - time_0_1_38_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - kernel32_sys_0_2_2.default.from_time_0_1_38__default_ = true; - libc_0_2_33.default.from_time_0_1_38__default_ = true; - redox_syscall_0_1_32.default.from_time_0_1_38__default_ = true; - winapi_0_2_8.default.from_time_0_1_38__default_ = true; - })) - [ libc_0_2_33_features redox_syscall_0_1_32_features kernel32_sys_0_2_2_features winapi_0_2_8_features ]; - toml_0_4_5 = f: toml_0_4_5_ rec { - dependencies = [ (serde_1_0_21 f) ]; + synom_0_11_3_features = f: updateFeatures f (rec { + synom_0_11_3.default = (f.synom_0_11_3.default or true); + unicode_xid_0_0_4.default = true; + }) [ unicode_xid_0_0_4_features ]; + tempdir_0_3_5 = { features?(tempdir_0_3_5_features {}) }: tempdir_0_3_5_ { + dependencies = mapFeatures features ([ rand_0_3_18 ]); }; - toml_0_4_5_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - serde_1_0_21.default.from_toml_0_4_5__default_ = true; - })) - [ serde_1_0_21_features ]; - unicode_width_0_1_4 = f: unicode_width_0_1_4_ rec { - features = mkFeatures (f.unicode_width_0_1_4 or {}); + tempdir_0_3_5_features = f: updateFeatures f (rec { + rand_0_3_18.default = true; + tempdir_0_3_5.default = (f.tempdir_0_3_5.default or true); + }) [ rand_0_3_18_features ]; + termcolor_0_3_3 = { features?(termcolor_0_3_3_features {}) }: termcolor_0_3_3_ { + dependencies = (if kernel == "windows" then mapFeatures features ([ wincolor_0_1_4 ]) else []); }; - unicode_width_0_1_4_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - unicode_xid_0_0_4 = f: unicode_xid_0_0_4_ rec { - features = mkFeatures (f.unicode_xid_0_0_4 or {}); + termcolor_0_3_3_features = f: updateFeatures f (rec { + termcolor_0_3_3.default = (f.termcolor_0_3_3.default or true); + wincolor_0_1_4.default = true; + }) [ wincolor_0_1_4_features ]; + termion_1_5_1 = { features?(termion_1_5_1_features {}) }: termion_1_5_1_ { + dependencies = (if !(kernel == "redox") then mapFeatures features ([ libc_0_2_33 ]) else []) + ++ (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_32 redox_termios_0_1_1 ]) else []); }; - unicode_xid_0_0_4_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - unreachable_1_0_0 = f: unreachable_1_0_0_ rec { - dependencies = [ (void_1_0_2 f) ]; + termion_1_5_1_features = f: updateFeatures f (rec { + libc_0_2_33.default = true; + redox_syscall_0_1_32.default = true; + redox_termios_0_1_1.default = true; + termion_1_5_1.default = (f.termion_1_5_1.default or true); + }) [ libc_0_2_33_features redox_syscall_0_1_32_features redox_termios_0_1_1_features ]; + textwrap_0_9_0 = { features?(textwrap_0_9_0_features {}) }: textwrap_0_9_0_ { + dependencies = mapFeatures features ([ unicode_width_0_1_4 ]); }; - unreachable_1_0_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - void_1_0_2.default.from_unreachable_1_0_0__default_ = false; - })) - [ void_1_0_2_features ]; - utf8_ranges_1_0_0 = f: utf8_ranges_1_0_0_ rec {}; - utf8_ranges_1_0_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - vcpkg_0_2_2 = f: vcpkg_0_2_2_ rec {}; - vcpkg_0_2_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - vec_map_0_8_0 = f: vec_map_0_8_0_ rec { - dependencies = []; - features = mkFeatures (f.vec_map_0_8_0 or {}); + textwrap_0_9_0_features = f: updateFeatures f (rec { + textwrap_0_9_0.default = (f.textwrap_0_9_0.default or true); + unicode_width_0_1_4.default = true; + }) [ unicode_width_0_1_4_features ]; + thread_local_0_3_4 = { features?(thread_local_0_3_4_features {}) }: thread_local_0_3_4_ { + dependencies = mapFeatures features ([ lazy_static_0_2_11 unreachable_1_0_0 ]); }; - vec_map_0_8_0_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - vec_map_0_8_0."serde".self_eders = hasFeature (vec_map_0_8_0."eders" or {}) || hasFeature (features.vec_map_0_8_0."eders" or {}); - vec_map_0_8_0."serde_derive".self_eders = hasFeature (vec_map_0_8_0."eders" or {}) || hasFeature (features.vec_map_0_8_0."eders" or {}); - })) - [ ]; - void_1_0_2 = f: void_1_0_2_ rec { - features = mkFeatures (f.void_1_0_2 or {}); + thread_local_0_3_4_features = f: updateFeatures f (rec { + lazy_static_0_2_11.default = true; + thread_local_0_3_4.default = (f.thread_local_0_3_4.default or true); + unreachable_1_0_0.default = true; + }) [ lazy_static_0_2_11_features unreachable_1_0_0_features ]; + time_0_1_38 = { features?(time_0_1_38_features {}) }: time_0_1_38_ { + dependencies = mapFeatures features ([ libc_0_2_33 ]) + ++ (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_32 ]) else []) + ++ (if kernel == "windows" then mapFeatures features ([ kernel32_sys_0_2_2 winapi_0_2_8 ]) else []); }; - void_1_0_2_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - void_1_0_2."std".self_default = hasFeature (void_1_0_2.default or {}) || hasFeature (features.void_1_0_2.default or {}); - })) - [ ]; - winapi_0_2_8 = f: winapi_0_2_8_ rec {}; - winapi_0_2_8_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; - winapi_build_0_1_1 = f: winapi_build_0_1_1_ rec {}; - winapi_build_0_1_1_features = features: - lib.lists.foldl' (features: f: f features) - (lib.attrsets.recursiveUpdate features (rec { - })) - [ ]; + time_0_1_38_features = f: updateFeatures f (rec { + kernel32_sys_0_2_2.default = true; + libc_0_2_33.default = true; + redox_syscall_0_1_32.default = true; + time_0_1_38.default = (f.time_0_1_38.default or true); + winapi_0_2_8.default = true; + }) [ libc_0_2_33_features redox_syscall_0_1_32_features kernel32_sys_0_2_2_features winapi_0_2_8_features ]; + toml_0_4_5 = { features?(toml_0_4_5_features {}) }: toml_0_4_5_ { + dependencies = mapFeatures features ([ serde_1_0_21 ]); + }; + toml_0_4_5_features = f: updateFeatures f (rec { + serde_1_0_21.default = true; + toml_0_4_5.default = (f.toml_0_4_5.default or true); + }) [ serde_1_0_21_features ]; + unicode_width_0_1_4 = { features?(unicode_width_0_1_4_features {}) }: unicode_width_0_1_4_ { + features = mkFeatures (features.unicode_width_0_1_4 or {}); + }; + unicode_width_0_1_4_features = f: updateFeatures f (rec { + unicode_width_0_1_4.default = (f.unicode_width_0_1_4.default or true); + }) []; + unicode_xid_0_0_4 = { features?(unicode_xid_0_0_4_features {}) }: unicode_xid_0_0_4_ { + features = mkFeatures (features.unicode_xid_0_0_4 or {}); + }; + unicode_xid_0_0_4_features = f: updateFeatures f (rec { + unicode_xid_0_0_4.default = (f.unicode_xid_0_0_4.default or true); + }) []; + unreachable_1_0_0 = { features?(unreachable_1_0_0_features {}) }: unreachable_1_0_0_ { + dependencies = mapFeatures features ([ void_1_0_2 ]); + }; + unreachable_1_0_0_features = f: updateFeatures f (rec { + unreachable_1_0_0.default = (f.unreachable_1_0_0.default or true); + void_1_0_2.default = (f.void_1_0_2.default or false); + }) [ void_1_0_2_features ]; + utf8_ranges_1_0_0 = { features?(utf8_ranges_1_0_0_features {}) }: utf8_ranges_1_0_0_ {}; + utf8_ranges_1_0_0_features = f: updateFeatures f (rec { + utf8_ranges_1_0_0.default = (f.utf8_ranges_1_0_0.default or true); + }) []; + vcpkg_0_2_2 = { features?(vcpkg_0_2_2_features {}) }: vcpkg_0_2_2_ {}; + vcpkg_0_2_2_features = f: updateFeatures f (rec { + vcpkg_0_2_2.default = (f.vcpkg_0_2_2.default or true); + }) []; + vec_map_0_8_0 = { features?(vec_map_0_8_0_features {}) }: vec_map_0_8_0_ { + dependencies = mapFeatures features ([]); + features = mkFeatures (features.vec_map_0_8_0 or {}); + }; + vec_map_0_8_0_features = f: updateFeatures f (rec { + vec_map_0_8_0.default = (f.vec_map_0_8_0.default or true); + vec_map_0_8_0.serde = + (f.vec_map_0_8_0.serde or false) || + (f.vec_map_0_8_0.eders or false) || + (vec_map_0_8_0.eders or false); + vec_map_0_8_0.serde_derive = + (f.vec_map_0_8_0.serde_derive or false) || + (f.vec_map_0_8_0.eders or false) || + (vec_map_0_8_0.eders or false); + }) []; + void_1_0_2 = { features?(void_1_0_2_features {}) }: void_1_0_2_ { + features = mkFeatures (features.void_1_0_2 or {}); + }; + void_1_0_2_features = f: updateFeatures f (rec { + void_1_0_2.default = (f.void_1_0_2.default or true); + void_1_0_2.std = + (f.void_1_0_2.std or false) || + (f.void_1_0_2.default or false) || + (void_1_0_2.default or false); + }) []; + winapi_0_2_8 = { features?(winapi_0_2_8_features {}) }: winapi_0_2_8_ {}; + winapi_0_2_8_features = f: updateFeatures f (rec { + winapi_0_2_8.default = (f.winapi_0_2_8.default or true); + }) []; + winapi_build_0_1_1 = { features?(winapi_build_0_1_1_features {}) }: winapi_build_0_1_1_ {}; + winapi_build_0_1_1_features = f: updateFeatures f (rec { + winapi_build_0_1_1.default = (f.winapi_build_0_1_1.default or true); + }) []; + wincolor_0_1_4 = { features?(wincolor_0_1_4_features {}) }: wincolor_0_1_4_ { + dependencies = mapFeatures features ([ kernel32_sys_0_2_2 winapi_0_2_8 ]); + }; + wincolor_0_1_4_features = f: updateFeatures f (rec { + kernel32_sys_0_2_2.default = true; + winapi_0_2_8.default = true; + wincolor_0_1_4.default = (f.wincolor_0_1_4.default or true); + }) [ kernel32_sys_0_2_2_features winapi_0_2_8_features ]; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3462be10bfec..d1bc39902e80 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6488,11 +6488,7 @@ with pkgs; buildRustCrate = callPackage ../build-support/rust/build-rust-crate.nix { }; - carnix = - let carnix = callPackage ../build-support/rust/carnix.nix { }; - carnixFeatures = carnix.carnix_0_6_0_features {}; - in - carnix.carnix_0_6_0 carnixFeatures; + carnix = (callPackage ../build-support/rust/carnix.nix { }).carnix { }; defaultCrateOverrides = callPackage ../build-support/rust/default-crate-overrides.nix { };