nix-super/doc/manual
pennae 79d3d412ca optimize derivation string parsing
a bunch of derivation strings contain no escape sequences. we can
optimize for this fact by first scanning for the end of a derivation
string and simply returning the contents unmodified if no escape
sequences were found. to make this even more efficient we can also use
BackedStringViews to avoid copies, avoiding heap allocations for
transient data.

before:

Benchmark 1: nix eval --raw --impure --expr 'with import <nixpkgs/nixos> {}; system'
  Time (mean ± σ):      6.952 s ±  0.015 s    [User: 5.294 s, System: 1.452 s]
  Range (min … max):    6.926 s …  6.974 s    10 runs

after:

Benchmark 1: nix eval --raw --impure --expr 'with import <nixpkgs/nixos> {}; system'
  Time (mean ± σ):      6.907 s ±  0.012 s    [User: 5.272 s, System: 1.429 s]
  Range (min … max):    6.893 s …  6.926 s    10 runs
2023-12-30 18:44:10 +01:00
..
rl-next optimize derivation string parsing 2023-12-30 18:44:10 +01:00
src Document more Makefile variables 2023-12-18 13:34:08 -08:00
theme doc/manual: don't need to copy highlight.js manually 2021-08-04 19:47:05 -07:00
_redirects add redirect to new store page 2023-12-01 01:54:48 +01:00
anchors.jq doc: Port anchors preprocessor to jq script 2022-05-26 18:17:21 +02:00
book.toml manual: Check links 2023-01-10 22:30:41 +01:00
custom.css disallow selecting shell prompt in code samples 2022-12-05 11:01:46 +01:00
generate-builtin-constants.nix use lookup paths in helper expressions consistently 2023-11-30 21:53:31 +01:00
generate-builtins.nix document fetchTree (#9258) 2023-12-10 05:16:32 +00:00
generate-manpage.nix fix links in stores overview 2023-12-02 00:56:41 +01:00
generate-settings.nix document fetchTree (#9258) 2023-12-10 05:16:32 +00:00
generate-store-info.nix document fetchTree (#9258) 2023-12-10 05:16:32 +00:00
generate-store-types.nix Document each store type on its own page 2023-12-01 01:27:52 +01:00
generate-xp-features-shortlist.nix use lookup paths in helper expressions consistently 2023-11-30 21:53:31 +01:00
generate-xp-features.nix Document each store type on its own page 2023-12-01 01:27:52 +01:00
local.mk Split --disable-tests, fix cross builds 2023-12-18 10:47:50 -05:00
quote-literals.xsl Generate release notes again 2014-03-12 14:24:29 +01:00
redirects.js add path based redirects 2023-11-27 08:33:03 +01:00
utils.nix Document each store type on its own page 2023-12-01 01:27:52 +01:00