phf_codegen-0.11.2/.cargo_vcs_info.json 0000644 00000000151 00000000001 0013353 0 ustar {
"git": {
"sha1": "c9c35fd8ba3f1bc228388b0cef6e3814a02a72c0"
},
"path_in_vcs": "phf_codegen"
} phf_codegen-0.11.2/CHANGELOG.md 0000644 0000000 0000000 00000057623 10461020230 0013774 0 ustar 0000000 0000000 # Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased
### Commit Statistics
- 4 commits contributed to the release over the course of 269 calendar days.
- 320 days passed between releases.
- 0 commits were understood as [conventional](https://www.conventionalcommits.org).
- 0 issues like '(#ID)' were seen in commit messages
### Commit Details
view details
* **Uncategorized**
- Merge pull request #274 from ankane/license-files ([`21baa73`](https://github.com/rust-phf/rust-phf/commit/21baa73941a0694ec48f437c0c0a6abfcc2f32d2))
- Include license files in crates ([`1229b2f`](https://github.com/rust-phf/rust-phf/commit/1229b2faa6b97542ab4850a1723b1723dea92814))
- Merge pull request #269 from JohnTitor/clarify-build-deps ([`3bc663e`](https://github.com/rust-phf/rust-phf/commit/3bc663eb82686caeab4f49848d867ce87d313765))
- Mention build-dependencies on phf_codegen ([`307ef77`](https://github.com/rust-phf/rust-phf/commit/307ef778fb3aa414b70b2d9584c71ee1a361836e))
## 0.11.1 (2022-08-08)
### Other
- add example using byte strings
### Commit Statistics
- 163 commits contributed to the release over the course of 2723 calendar days.
- 1 commit was understood as [conventional](https://www.conventionalcommits.org).
- 0 issues like '(#ID)' were seen in commit messages
### Commit Details
view details
* **Uncategorized**
- Release phf_shared v0.11.1, phf_generator v0.11.1, phf_macros v0.11.1, phf v0.11.1, phf_codegen v0.11.1 ([`3897b21`](https://github.com/rust-phf/rust-phf/commit/3897b21c6d38e5adcaf9110b4bb33c19f6b41977))
- Merge pull request #264 from rust-phf/tweak-changelog ([`97f997d`](https://github.com/rust-phf/rust-phf/commit/97f997d2be827ca636a29046c78e2c09c5c62650))
- Replace handmade changelog with generated one by `cargo-smart-release` ([`cb84cf6`](https://github.com/rust-phf/rust-phf/commit/cb84cf6636ab52823c53e70d6abeac8f648a3482))
- Merge pull request #260 from JohnTitor/fix-repo-link ([`1407ebe`](https://github.com/rust-phf/rust-phf/commit/1407ebe536b39611db92d765ddec4de0e6c8a16e))
- Add category to crates ([`32a72c3`](https://github.com/rust-phf/rust-phf/commit/32a72c3859997fd6b590e9ec092ae789d2acdf55))
- Update repository links on Cargo.toml ([`1af3b0f`](https://github.com/rust-phf/rust-phf/commit/1af3b0fe1f8fdcae7ccc1bc8d51de309fb16a6bf))
- Merge pull request #258 from JohnTitor/release-0.11.0 ([`c0b9ef9`](https://github.com/rust-phf/rust-phf/commit/c0b9ef98e798f807f94544aeb0fff429ef280efc))
- Release 0.11.0 ([`d2efdc0`](https://github.com/rust-phf/rust-phf/commit/d2efdc08a7eb1d0d6c414b7b2ac41ce1fe1f9a43))
- Merge pull request #257 from JohnTitor/edition-2021 ([`36ec885`](https://github.com/rust-phf/rust-phf/commit/36ec8854a9da4f295618e98d94aaf7150df2173e))
- Make crates edition 2021 ([`b9d25da`](https://github.com/rust-phf/rust-phf/commit/b9d25da58b912d9927fbc41901631cd77836462b))
- Merge pull request #252 from JohnTitor/clippy-fixes ([`22570b8`](https://github.com/rust-phf/rust-phf/commit/22570b89476248d22c9d77f315fd98e048c49700))
- Fix some Clippy warnings ([`71fd47c`](https://github.com/rust-phf/rust-phf/commit/71fd47ca27a8b1fe24b2eec75efd17ddfe11835f))
- Merge pull request #251 from JohnTitor/weak-deps ([`2e1167c`](https://github.com/rust-phf/rust-phf/commit/2e1167c2046cd20aed1a906b4e23b40303cf0c00))
- Make "unicase + macros" features work ([`11bb242`](https://github.com/rust-phf/rust-phf/commit/11bb2426f0237b1ecea8c8038630b1231ede4871))
- Merge pull request #245 from JohnTitor/phf-0.10.1 ([`bed0153`](https://github.com/rust-phf/rust-phf/commit/bed01538ae576876f11189d541875d228acef9e8))
- Prepare 0.10.1 release ([`4cc8344`](https://github.com/rust-phf/rust-phf/commit/4cc8344fad640ed71d75f557ce1a3b6eded321c3))
- Merge pull request #241 from JohnTitor/extract-macro-tests ([`7b0a313`](https://github.com/rust-phf/rust-phf/commit/7b0a3130a55176d2570300f92cb7ddca6c23da83))
- Extract `phf_macros` tests as a separated crate ([`8cf694d`](https://github.com/rust-phf/rust-phf/commit/8cf694d76e0991b4e24ecdc5d2a88bb74713d9cd))
- Merge pull request #240 from JohnTitor/docs-update ([`da98b9e`](https://github.com/rust-phf/rust-phf/commit/da98b9e80fdb22cd6d48a4a42489840afe603756))
- Refine doc comments ([`d8cfc43`](https://github.com/rust-phf/rust-phf/commit/d8cfc436059a1c2c3ede1afb0f9ec2333c046fc6))
- Merge pull request #234 from JohnTitor/fix-ci ([`eba4cc2`](https://github.com/rust-phf/rust-phf/commit/eba4cc28d92c1db95cc430985a0fbc9ca63d1307))
- Fix CI failure ([`d9b5ff2`](https://github.com/rust-phf/rust-phf/commit/d9b5ff23367d2bbcc385ff8243c7d972f45d459c))
- Merge pull request #230 from JohnTitor/release-0.10 ([`3ea14b2`](https://github.com/rust-phf/rust-phf/commit/3ea14b2166553ad6e7b9afe7244144f5d661b6c6))
- Prepare for release 0.10.0 ([`588ac25`](https://github.com/rust-phf/rust-phf/commit/588ac25dd5c0afccea084e6f94867328a6a30454))
- Merge pull request #228 from JohnTitor/release-0.9.1 ([`d527f9d`](https://github.com/rust-phf/rust-phf/commit/d527f9d016adafe7d2930e37710291030b432838))
- Prepare for v0.9.1 ([`9b71978`](https://github.com/rust-phf/rust-phf/commit/9b719789149ef195ef5eba093b7e73255fbef8dc))
- Merge pull request #224 from bhgomes/const-fns ([`65deaf7`](https://github.com/rust-phf/rust-phf/commit/65deaf745b5175b6b8e645b6c66e53fc55bb3a85))
- Remove Slice type and fix some docs ([`99d3533`](https://github.com/rust-phf/rust-phf/commit/99d353390f8124a283da9202fd4d163e68bc1949))
- Merge pull request #223 from JohnTitor/minor-cleanup ([`c746106`](https://github.com/rust-phf/rust-phf/commit/c746106ad05917ad62f244504727b07e07c3e075))
- Minor cleanups ([`8868d08`](https://github.com/rust-phf/rust-phf/commit/8868d088e2fed36fcd7741e9a1c5bf68bef4f46e))
- Merge pull request #219 from JohnTitor/release-0.9.0 ([`307969f`](https://github.com/rust-phf/rust-phf/commit/307969ff3bb8cae320e648890a9525920035944b))
- Prepare 0.9.0 release ([`2ca46c4`](https://github.com/rust-phf/rust-phf/commit/2ca46c4f9c9083c128fcc6add33dc5986638940f))
- Cleanup cargo metadata ([`a9e4b0a`](https://github.com/rust-phf/rust-phf/commit/a9e4b0a1e84825004fa66e938b870f83d3147d0d))
- Merge pull request #218 from JohnTitor/cleanup ([`76f9072`](https://github.com/rust-phf/rust-phf/commit/76f907239af9b0cca7dac4e6d702cedc72f6f371))
- Run rustfmt ([`dd86c6c`](https://github.com/rust-phf/rust-phf/commit/dd86c6c103f25021b52144085b8fab0a94582bef))
- Fix some clippy warnings ([`9adc370`](https://github.com/rust-phf/rust-phf/commit/9adc370ead7fbcc36cd0c74f495ab7631e0c9754))
- Cleanup docs ([`ddecc3a`](https://github.com/rust-phf/rust-phf/commit/ddecc3aa97aec6d9e9d6e59c57bc598d476335c1))
- Merge pull request #197 from benesch/uncased ([`8b44f0c`](https://github.com/rust-phf/rust-phf/commit/8b44f0c4caf1a431426ff8dbae68f0693d6cef63))
- Add support for uncased ([`2a6087f`](https://github.com/rust-phf/rust-phf/commit/2a6087fcaf99b445ff6013f693f7c4fe5d6f7387))
- Merge pull request #174 from abonander/169-drop-borrow ([`3c087d4`](https://github.com/rust-phf/rust-phf/commit/3c087d4782be496e7955d2b51d5883c4ce64ccd3))
- Replace uses of `std::borrow::Borrow` with new `PhfBorrow` trait ([`b2f3a9c`](https://github.com/rust-phf/rust-phf/commit/b2f3a9c6a95ebabc2b0ae7ed1ec3ee7d72418e85))
- Merge pull request #205 from skyfloogle/ordered-stuff ([`9ae1678`](https://github.com/rust-phf/rust-phf/commit/9ae1678f2507d6d26a1b780385a2e17bdfbb0b5c))
- Add back ordered_map, ordered_set ([`0ab0108`](https://github.com/rust-phf/rust-phf/commit/0ab01081e4bd8f40bc18ab554c95f217220228d5))
- Merge pull request #208 from JohnTitor/simplify-workspace ([`a47ac36`](https://github.com/rust-phf/rust-phf/commit/a47ac36b16dd8798659be3e24f74051cd1ed760d))
- Use `[patch.crates-io]` section instead of path key ([`f47515b`](https://github.com/rust-phf/rust-phf/commit/f47515bce5c433214dbecee262a7a6f14e6a74d4))
- Merge pull request #180 from abonander/master ([`81c7cc5`](https://github.com/rust-phf/rust-phf/commit/81c7cc5b48649108428671d3b8ad151f6fbdb359))
- Release v0.8.0 ([`4060288`](https://github.com/rust-phf/rust-phf/commit/4060288dc2c1ebe3b0630e4016ed51935bb0c863))
- Merge pull request #171 from abonander/170-removals ([`0d00821`](https://github.com/rust-phf/rust-phf/commit/0d0082178568036736bb6d51cb91f95ca5a616c3))
- Remove ordered_map, ordered_set, phf_builder ([`8ae2bb8`](https://github.com/rust-phf/rust-phf/commit/8ae2bb886841a69a4fc482f439e2374f2373ab15))
- Merge pull request #165 from abonander/151-byte-string-keys ([`c5959b4`](https://github.com/rust-phf/rust-phf/commit/c5959b4f2c058134bf356268492845cf9e23ca95))
- Fix intra-module links ([`774c527`](https://github.com/rust-phf/rust-phf/commit/774c527473b4327c41ca32d3db9e163273ab4ff7))
- Remove links to `phf` types since that crate is not linked ([`e7830f9`](https://github.com/rust-phf/rust-phf/commit/e7830f910dcc0996476d085013ac590fad6ffb40))
- Add example using byte strings ([`f04e8de`](https://github.com/rust-phf/rust-phf/commit/f04e8def1d3ca69dadada2b37297a1b92cfe5440))
- Merge pull request #161 from abonander/display-builders ([`171f7ed`](https://github.com/rust-phf/rust-phf/commit/171f7edccb71766e9381600108a0d996513ec7ea))
- Create `Display` adapters for `phf_codegen` builders ([`93aa7ae`](https://github.com/rust-phf/rust-phf/commit/93aa7ae1de87345ea19f38e747283bc712384650))
- Merge pull request #164 from abonander/perf-improvements ([`70129c6`](https://github.com/rust-phf/rust-phf/commit/70129c6fbcdf428ce9f1014eea935301ac70e410))
- Use two separate hashes and full 32-bit displacements ([`9b70bd9`](https://github.com/rust-phf/rust-phf/commit/9b70bd94f8b0b74f156e75ccefbd4a4c7ba29728))
- Merge pull request #157 from abonander/array-formatting ([`8fc18be`](https://github.com/rust-phf/rust-phf/commit/8fc18be75dd3cb284b0b34b6c9e99c3c92544268))
- Add tests for array and byte-slice keys ([`cb7aa0c`](https://github.com/rust-phf/rust-phf/commit/cb7aa0cecf4174be08f6e733334c224050edc2a6))
- Merge branch 'master' into patch-1 ([`cd0d7ce`](https://github.com/rust-phf/rust-phf/commit/cd0d7ce1194252dcaca3153988ba2a4effa66b4f))
- Merge pull request #152 from abonander/unicase-upgrade ([`27f7c2c`](https://github.com/rust-phf/rust-phf/commit/27f7c2c85efde7aeb3c5409985f2d605aff8e05b))
- Convert to 2018 edition ([`9ff66ab`](https://github.com/rust-phf/rust-phf/commit/9ff66ab36a23c7170cc775773f042a06de426c3b))
- Upgrade `unicase` ([`4a7f766`](https://github.com/rust-phf/rust-phf/commit/4a7f7667598e7beb4c76c72b2bf2fb6571f6dbd9))
- Don't rely on `fmt::Debug` for codegen ([`97405f5`](https://github.com/rust-phf/rust-phf/commit/97405f5be14738dc5d03a8b309297ffa295f4702))
- Merge pull request #145 from cetra3/empty_hash ([`2d3176b`](https://github.com/rust-phf/rust-phf/commit/2d3176b384112db5ca3fea08f1973ffc8a7c729b))
- Fix & include tests for empty maps ([`83fd51c`](https://github.com/rust-phf/rust-phf/commit/83fd51c3095cbcd22b87c4d26ee22eb27a4e98d0))
- Release v0.7.24 ([`1287414`](https://github.com/rust-phf/rust-phf/commit/1287414b1302d2d717c5f4be81accf4c12ccad48))
- Release v0.7.23 ([`a050b6f`](https://github.com/rust-phf/rust-phf/commit/a050b6f2a6b825bf0824339266ab9545340420d4))
- Release 0.7.22 ([`ab88405`](https://github.com/rust-phf/rust-phf/commit/ab884054fa17eef915db2bdb5259c7aa71fbfea6))
- Release v0.7.21 ([`6c7e2d9`](https://github.com/rust-phf/rust-phf/commit/6c7e2d9ce17ff1b87507925bdbe87e6e682ed3e4))
- Link to docs.rs ([`61142c5`](https://github.com/rust-phf/rust-phf/commit/61142c5aa168cff1bf53a6961ddc12012b49e1bb))
- Dependency cleanup ([`f106aa6`](https://github.com/rust-phf/rust-phf/commit/f106aa66d85abfba3d627d12fd46a9b080c83e95))
- Release v0.7.20 ([`f631f50`](https://github.com/rust-phf/rust-phf/commit/f631f50abfaf6ea3d6fc8caaada47975b6df3a62))
- Merge branch 'release' ([`ea7e256`](https://github.com/rust-phf/rust-phf/commit/ea7e2562706663632a0af65ae9fa94e5cf78c4ea))
- Merge branch 'release-v0.7.19' into release ([`81a4806`](https://github.com/rust-phf/rust-phf/commit/81a4806b05f14fb49aa972de27a42926a542ec44))
- Release v0.7.19 ([`0a98dd1`](https://github.com/rust-phf/rust-phf/commit/0a98dd1865d12a3fa4cc27bdb38fa1e7374940d9))
- Merge branch 'release' ([`ecab54b`](https://github.com/rust-phf/rust-phf/commit/ecab54b8a028c88938f220dbb0a684e017bab62f))
- Merge branch 'release-v0.7.18' into release ([`dfa970b`](https://github.com/rust-phf/rust-phf/commit/dfa970b229cc32cfb2da1692aa94ad8a266e704a))
- Release v0.7.18 ([`3f71765`](https://github.com/rust-phf/rust-phf/commit/3f717650f4331f5dbb9d7a3f878228fcf1138729))
- Merge branch 'release' ([`5f08563`](https://github.com/rust-phf/rust-phf/commit/5f0856327731107d9fada1b0318f6f15f32957c2))
- Merge branch 'release-v0.7.17' into release ([`e073dd2`](https://github.com/rust-phf/rust-phf/commit/e073dd262d1b4c95234222ee5048fc883b9c7301))
- Release v0.7.17 ([`21ecf72`](https://github.com/rust-phf/rust-phf/commit/21ecf72101715e4754db95a64ecd7de5a37b7f14))
- Merge branch 'release' ([`839f06d`](https://github.com/rust-phf/rust-phf/commit/839f06d5a10c1300353b8f3c972990624695b668))
- Merge branch 'release-v0.7.16' into release ([`6f5575c`](https://github.com/rust-phf/rust-phf/commit/6f5575c9b12d3619ea17c0825a613fcac12820f4))
- Release v0.7.16 ([`8bf29c1`](https://github.com/rust-phf/rust-phf/commit/8bf29c10a878c83d73cc40385f0e96cb9cc95afa))
- Merge branch 'release' ([`b4ec398`](https://github.com/rust-phf/rust-phf/commit/b4ec398f415e5cac2cd4d794b1889788e644447f))
- Merge branch 'release-v0.7.15' into release ([`6bbc9e2`](https://github.com/rust-phf/rust-phf/commit/6bbc9e249b9a84e2019432b7d3b178851d2d776e))
- Release v0.7.15 ([`20f896e`](https://github.com/rust-phf/rust-phf/commit/20f896e6975cabb9cf9883b08eaa5b3da8597f11))
- Merge pull request #83 from aidanhs/aphs-set-phf-path-2 ([`66ead77`](https://github.com/rust-phf/rust-phf/commit/66ead7737f446201eb8539308972c8e7d68b4866))
- Add overlooked phf path overrides ([`da5f9be`](https://github.com/rust-phf/rust-phf/commit/da5f9bea6d964f48453116090085386e2fd1bab3))
- Merge pull request #81 from aidanhs/aphs-set-phf-path ([`c59f70e`](https://github.com/rust-phf/rust-phf/commit/c59f70eac26b7c2e1ca376408a8d142afde4217c))
- Allow specifying a module path to the phf crate for codegen ([`4a7999e`](https://github.com/rust-phf/rust-phf/commit/4a7999e861bd32ee97a7d35e0a392bdd2ca1b0b7))
- Merge branch 'release' ([`7c692d4`](https://github.com/rust-phf/rust-phf/commit/7c692d42970bf6cb2540f6b2d3c88d63b3fd1f7a))
- Merge branch 'release-v0.7.14' into release ([`ea8dd65`](https://github.com/rust-phf/rust-phf/commit/ea8dd652c292746a20bf3a680e9f925f6f0530b1))
- Release v0.7.14 ([`fee66fc`](https://github.com/rust-phf/rust-phf/commit/fee66fc20e33f2b119f830a8926f3b6e52abcf09))
- Merge pull request #82 from Ryman/unicase ([`909fac5`](https://github.com/rust-phf/rust-phf/commit/909fac5d4414a7d366432de078bcc6f78a25c230))
- Add an impl of PhfHash for UniCase ([`d761144`](https://github.com/rust-phf/rust-phf/commit/d761144daf92ce6aed83165aa840a1ae72bd0bb2))
- Introduce a Slice abstraction for buffers ([`0cc3844`](https://github.com/rust-phf/rust-phf/commit/0cc38449c21f29bd9348e28c5719d650e16159cf))
- Merge branch 'release' ([`d9351e1`](https://github.com/rust-phf/rust-phf/commit/d9351e1488bd42d1a4453e4a465177fb1c781fdc))
- Merge branch 'release-v0.7.13' into release ([`b582e4e`](https://github.com/rust-phf/rust-phf/commit/b582e4ecec23be992ba915fc7873c0d5598f388a))
- Release v0.7.13 ([`4769a6d`](https://github.com/rust-phf/rust-phf/commit/4769a6d2ce1d392da06e4b3cb833a1cdccb1f1aa))
- Merge branch 'release' ([`5659a9d`](https://github.com/rust-phf/rust-phf/commit/5659a9db39bc5ee2179b264fce4cba4384d6d025))
- Merge branch 'release-v0.7.12' into release ([`2f0a5de`](https://github.com/rust-phf/rust-phf/commit/2f0a5de9f01d9d22c774d8d85daec2a047a462e8))
- Release v0.7.12 ([`9b75ee5`](https://github.com/rust-phf/rust-phf/commit/9b75ee5ed14060c45a5785fba0387be09e698624))
- Merge branch 'release' ([`87ffab8`](https://github.com/rust-phf/rust-phf/commit/87ffab863aaeefb5ac2164da62f0407122d8057e))
- Merge branch 'release-v0.7.11' into release ([`7260d04`](https://github.com/rust-phf/rust-phf/commit/7260d04413349bacab484afb74f9a496335278e1))
- Release v0.7.11 ([`a004227`](https://github.com/rust-phf/rust-phf/commit/a0042277b181ec95fcbf29751b9a453f4f962ebb))
- Merge branch 'release' ([`1579bec`](https://github.com/rust-phf/rust-phf/commit/1579bec1448c7b833f5965fe39d4ef2df66c982c))
- Merge branch 'release-v0.7.10' into release ([`25cea13`](https://github.com/rust-phf/rust-phf/commit/25cea133fb4eec938bdfa74f04adbc8d94e30d4e))
- Release v0.7.10 ([`c43154b`](https://github.com/rust-phf/rust-phf/commit/c43154b2661dc09620a7879c16f37b47d6ec03ae))
- Merge branch 'release' ([`2c67ce5`](https://github.com/rust-phf/rust-phf/commit/2c67ce5a4129cd543178bf015f021a3bb83b6895))
- Merge branch 'release-v0.7.9' into release ([`87206e1`](https://github.com/rust-phf/rust-phf/commit/87206e1c7b8d4089370dc168402ded0c0700a447))
- Release v0.7.9 ([`b7d29df`](https://github.com/rust-phf/rust-phf/commit/b7d29dfe0df288b2da74de195f764eace1c8e443))
- Merge branch 'release' ([`cd33902`](https://github.com/rust-phf/rust-phf/commit/cd339023e90ac1ce6971fa81badea65fb1f2b086))
- Merge branch 'release-v0.7.8' into release ([`8bc23a0`](https://github.com/rust-phf/rust-phf/commit/8bc23a023908a038d668b6f7d8e94ee416995285))
- Release v0.7.8 ([`aad0b9b`](https://github.com/rust-phf/rust-phf/commit/aad0b9b658fb970e3df60b066961aafca1a17c44))
- Merge branch 'release' ([`dccff69`](https://github.com/rust-phf/rust-phf/commit/dccff69384729e3d4972174ce62d8f9db9429485))
- Merge branch 'release-v0.7.7' into release ([`2d988b7`](https://github.com/rust-phf/rust-phf/commit/2d988b7dfb04d949246adc047f6b195263612246))
- Release v0.7.7 ([`c9e7a93`](https://github.com/rust-phf/rust-phf/commit/c9e7a93f4d6f85a72651aba6187e4c956d8c1167))
- Run through rustfmt ([`58e2223`](https://github.com/rust-phf/rust-phf/commit/58e222380b7fc9609a055cb5a6110ba04e47d677))
- Merge branch 'release' ([`776046c`](https://github.com/rust-phf/rust-phf/commit/776046c961456dee9e16a6b6574d336c66e259f8))
- Merge branch 'release-v0.7.6' into release ([`2ea7d5c`](https://github.com/rust-phf/rust-phf/commit/2ea7d5cab5e9e54952ca618b43ec3583a33a4847))
- Release v0.7.6 ([`5bcd5c9`](https://github.com/rust-phf/rust-phf/commit/5bcd5c95215f5aa29e133cb2912662085a8158f0))
- Merge branch 'release' ([`1f770df`](https://github.com/rust-phf/rust-phf/commit/1f770df1290b586a8d641ecb0bbd105080afc0ea))
- Merge branch 'release-v0.7.5' into release ([`bb65b8c`](https://github.com/rust-phf/rust-phf/commit/bb65b8cca30ef9d4518e3083558019a972873efa))
- Release v0.7.5 ([`fda44f5`](https://github.com/rust-phf/rust-phf/commit/fda44f550401c1bd4aad29bb2c07030b86761028))
- Merge pull request #66 from brson/next ([`792b5da`](https://github.com/rust-phf/rust-phf/commit/792b5da77ec99a893e9d1a3ceaeafe5b9f869828))
- Work around rust#27438 by adding a call to a non-generic function ([`ddfaebf`](https://github.com/rust-phf/rust-phf/commit/ddfaebfb8f13dbb605ded4510833830fb8bdbf80))
- Merge branch 'release' ([`269b5dc`](https://github.com/rust-phf/rust-phf/commit/269b5dc41ebf82f423393d5219e8107e9c911a03))
- Merge branch 'release-v0.7.4' into release ([`7c093e8`](https://github.com/rust-phf/rust-phf/commit/7c093e83ffe5192d9cdcd5402b6abb7800ffafb3))
- Release v0.7.4 ([`c7c0d3c`](https://github.com/rust-phf/rust-phf/commit/c7c0d3c294126157f0275a05b7c3a65c419234a1))
- Merge pull request #61 from SimonSapin/env! ([`d5b3f6d`](https://github.com/rust-phf/rust-phf/commit/d5b3f6dd320cd5a452441693b61a26fd610da6eb))
- Don’t use/recommend `env!` in build scripts. ([`b9391ff`](https://github.com/rust-phf/rust-phf/commit/b9391fff4f5cb2c810a01cf8ea42282026ef3617))
- Release v0.7.3 ([`77ea239`](https://github.com/rust-phf/rust-phf/commit/77ea23917e908b10c4c5c463671a8409292f8661))
- Doc tweak ([`0d23afb`](https://github.com/rust-phf/rust-phf/commit/0d23afb0be5b1dadd21bca8c32e928da4b184f2c))
- Warn about rustc stack overflow ([`48759a8`](https://github.com/rust-phf/rust-phf/commit/48759a81c1dc2f07f74c97ce11d732c179caa331))
- Fix docs ([`4b94d0f`](https://github.com/rust-phf/rust-phf/commit/4b94d0f2903cff35001e0c63cb62c7258f3ad193))
- Fix example ([`0705574`](https://github.com/rust-phf/rust-phf/commit/0705574b530d2e4525df7279846d4891cfbb7d90))
- Remove unneeded feature flag ([`efac42a`](https://github.com/rust-phf/rust-phf/commit/efac42abe90b353f372f09775d3ec3d869e18141))
- Release v0.7.2 ([`642b69d`](https://github.com/rust-phf/rust-phf/commit/642b69d0100a4ee7ec6e430ef1351bd1f28f9a4a))
- Release v0.7.1 ([`9cb9de9`](https://github.com/rust-phf/rust-phf/commit/9cb9de911ad4e16964f0def29780dde1630c3619))
- Fix codegen tests ([`4f1cf46`](https://github.com/rust-phf/rust-phf/commit/4f1cf46d9c8b1eddcef856a599c4875a3d3bf0b2))
- Release v0.7.0 ([`555a690`](https://github.com/rust-phf/rust-phf/commit/555a690561673597aee068650ac884bbcc2e31cf))
- Release v0.6.19 ([`5810d30`](https://github.com/rust-phf/rust-phf/commit/5810d30ef2162f33cfb4da99c65b7344c7f2913b))
- Release v0.6.18 ([`36efc72`](https://github.com/rust-phf/rust-phf/commit/36efc721478d097fba1e5458cbdd9f288637abae))
- Fix for upstream changes ([`eabadcf`](https://github.com/rust-phf/rust-phf/commit/eabadcf7e8af351ba8f07d86746e35adc8c5812e))
- Release v0.6.17 ([`271ccc2`](https://github.com/rust-phf/rust-phf/commit/271ccc27d885363d4d8c549f75624d08c48e56c5))
- Release v0.6.15 ([`ede14df`](https://github.com/rust-phf/rust-phf/commit/ede14df1e574674852b09bcafff4ad549ebfd4ae))
- Remove pointless dev-dependencies ([`4620622`](https://github.com/rust-phf/rust-phf/commit/4620622da87473c7fee5927196a63e3b03b99bcf))
- Release v0.6.14 ([`cf64ebb`](https://github.com/rust-phf/rust-phf/commit/cf64ebb8f769c9f12c9a03d05713dde6b8caf371))
- Release v0.6.13 ([`4fdb533`](https://github.com/rust-phf/rust-phf/commit/4fdb5331fd9978ca3e180a06fb2e34627f50fb77))
- Fix warnings and use debug builders ([`4d28684`](https://github.com/rust-phf/rust-phf/commit/4d28684b72333e911e23b898b5780947d49822a5))
- Remove unused feature ([`efcdc74`](https://github.com/rust-phf/rust-phf/commit/efcdc74300cd26ce5494aaef4cff68ced9a3a4bc))
- Release v0.6.12 ([`59ca586`](https://github.com/rust-phf/rust-phf/commit/59ca58637206c9806c13cc24cb35cb7d0ce9d23f))
- Fix whitespace in codegen ([`8078e83`](https://github.com/rust-phf/rust-phf/commit/8078e833d04404227909a73139d61baec2b483d3))
- Release v0.6.11 ([`e1e6d3b`](https://github.com/rust-phf/rust-phf/commit/e1e6d3b40a6babddd0989406f2b4e952443ff52e))
- Pretty print generated structs ([`96c5ef3`](https://github.com/rust-phf/rust-phf/commit/96c5ef3f80fddb78c0050aa5e15cac1b63ffe542))
- Fix string keys in codegen ([`71db0b9`](https://github.com/rust-phf/rust-phf/commit/71db0b9826eb6e1bbcf6c75a599c215d9fb5a5db))
- Release v0.6.10 ([`fc45373`](https://github.com/rust-phf/rust-phf/commit/fc45373b34a461664f532c5108f3d2625172c128))
- Add doc roots ([`e22cdea`](https://github.com/rust-phf/rust-phf/commit/e22cdea2b24ce65b4de25adbb6cce727f20ac2f5))
- Add docs to phf_codegen ([`8b71a9a`](https://github.com/rust-phf/rust-phf/commit/8b71a9a9b9ac9ecf579975327af18f0b6261bbbc))
- Fix paths in codegen ([`75b37fd`](https://github.com/rust-phf/rust-phf/commit/75b37fd88cfe4553826317b459a8163b4db8e54b))
- Add a codegen crate ([`311bf94`](https://github.com/rust-phf/rust-phf/commit/311bf94f90dcded03d41f54769d2fc29764bc4df))
phf_codegen-0.11.2/Cargo.toml 0000644 00000001564 00000000001 0011362 0 ustar # THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.
[package]
edition = "2021"
rust-version = "1.60"
name = "phf_codegen"
version = "0.11.2"
authors = ["Steven Fackler "]
description = "Codegen library for PHF types"
readme = "README.md"
categories = ["data-structures"]
license = "MIT"
repository = "https://github.com/rust-phf/rust-phf"
resolver = "1"
[dependencies.phf_generator]
version = "0.11.0"
[dependencies.phf_shared]
version = "0.11.0"
phf_codegen-0.11.2/Cargo.toml.orig 0000644 0000000 0000000 00000000565 10461020230 0015043 0 ustar 0000000 0000000 [package]
name = "phf_codegen"
authors = ["Steven Fackler "]
version = "0.11.2"
license = "MIT"
description = "Codegen library for PHF types"
repository = "https://github.com/rust-phf/rust-phf"
edition = "2021"
readme = "../README.md"
rust-version = "1.60"
categories = ["data-structures"]
[dependencies]
phf_generator = "0.11.0"
phf_shared = "0.11.0"
phf_codegen-0.11.2/LICENSE 0000644 0000000 0000000 00000002113 10461020230 0013150 0 ustar 0000000 0000000 The MIT License (MIT)
Copyright (c) 2014-2022 Steven Fackler, Yuki Okushi
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
phf_codegen-0.11.2/README.md 0000644 0000000 0000000 00000006027 10461020230 0013432 0 ustar 0000000 0000000 # Rust-PHF
[](https://github.com/rust-phf/rust-phf/actions/workflows/ci.yml) [](https://crates.io/crates/phf)
[Documentation](https://docs.rs/phf)
Rust-PHF is a library to generate efficient lookup tables at compile time using
[perfect hash functions](http://en.wikipedia.org/wiki/Perfect_hash_function).
It currently uses the
[CHD algorithm](http://cmph.sourceforge.net/papers/esa09.pdf) and can generate
a 100,000 entry map in roughly .4 seconds.
MSRV (minimum supported rust version) is Rust 1.60.
## Usage
PHF data structures can be constructed via either the procedural
macros in the `phf_macros` crate or code generation supported by the
`phf_codegen` crate.
To compile the `phf` crate with a dependency on
libcore instead of libstd, enabling use in environments where libstd
will not work, set `default-features = false` for the dependency:
```toml
[dependencies]
# to use `phf` in `no_std` environments
phf = { version = "0.11", default-features = false }
```
### phf_macros
```rust
use phf::phf_map;
#[derive(Clone)]
pub enum Keyword {
Loop,
Continue,
Break,
Fn,
Extern,
}
static KEYWORDS: phf::Map<&'static str, Keyword> = phf_map! {
"loop" => Keyword::Loop,
"continue" => Keyword::Continue,
"break" => Keyword::Break,
"fn" => Keyword::Fn,
"extern" => Keyword::Extern,
};
pub fn parse_keyword(keyword: &str) -> Option {
KEYWORDS.get(keyword).cloned()
}
```
```toml
[dependencies]
phf = { version = "0.11", features = ["macros"] }
```
#### Note
Currently, the macro syntax has some limitations and may not
work as you want. See [#183] or [#196] for example.
[#183]: https://github.com/rust-phf/rust-phf/issues/183
[#196]: https://github.com/rust-phf/rust-phf/issues/196
### phf_codegen
To use `phf_codegen` on build.rs, you have to add dependencies under `[build-dependencies]`:
```toml
[build-dependencies]
phf = { version = "0.11.1", default-features = false }
phf_codegen = "0.11.1"
```
Then put code on build.rs:
```rust
use std::env;
use std::fs::File;
use std::io::{BufWriter, Write};
use std::path::Path;
fn main() {
let path = Path::new(&env::var("OUT_DIR").unwrap()).join("codegen.rs");
let mut file = BufWriter::new(File::create(&path).unwrap());
write!(
&mut file,
"static KEYWORDS: phf::Map<&'static str, Keyword> = {}",
phf_codegen::Map::new()
.entry("loop", "Keyword::Loop")
.entry("continue", "Keyword::Continue")
.entry("break", "Keyword::Break")
.entry("fn", "Keyword::Fn")
.entry("extern", "Keyword::Extern")
.build()
)
.unwrap();
write!(&mut file, ";\n").unwrap();
}
```
and lib.rs:
```rust
#[derive(Clone)]
enum Keyword {
Loop,
Continue,
Break,
Fn,
Extern,
}
include!(concat!(env!("OUT_DIR"), "/codegen.rs"));
pub fn parse_keyword(keyword: &str) -> Option {
KEYWORDS.get(keyword).cloned()
}
```
phf_codegen-0.11.2/src/lib.rs 0000644 0000000 0000000 00000030777 10461020230 0014067 0 ustar 0000000 0000000 //! A set of builders to generate Rust source for PHF data structures at
//! compile time.
//!
//! The provided builders are intended to be used in a Cargo build script to
//! generate a Rust source file that will be included in a library at build
//! time.
//!
//! For more information about `rust-phf` crates, see [the `phf` crate's documentation][phf].
//!
//! [phf]: https://docs.rs/phf
//!
//! ## Examples
//!
//! To use `phf_codegen` on build.rs, you have to add dependencies under `[build-dependencies]`:
//!
//! ```toml
//! [build-dependencies]
//! phf = { version = "0.11.1", default-features = false }
//! phf_codegen = "0.11.1"
//! ```
//!
//! Then put code on build.rs:
//!
//! ```ignore
//! use std::env;
//! use std::fs::File;
//! use std::io::{BufWriter, Write};
//! use std::path::Path;
//!
//! fn main() {
//! let path = Path::new(&env::var("OUT_DIR").unwrap()).join("codegen.rs");
//! let mut file = BufWriter::new(File::create(&path).unwrap());
//!
//! write!(
//! &mut file,
//! "static KEYWORDS: phf::Map<&'static str, Keyword> = {}",
//! phf_codegen::Map::new()
//! .entry("loop", "Keyword::Loop")
//! .entry("continue", "Keyword::Continue")
//! .entry("break", "Keyword::Break")
//! .entry("fn", "Keyword::Fn")
//! .entry("extern", "Keyword::Extern")
//! .build()
//! )
//! .unwrap();
//! write!(&mut file, ";\n").unwrap();
//! }
//! ```
//!
//! and lib.rs:
//!
//! ```ignore
//! #[derive(Clone)]
//! enum Keyword {
//! Loop,
//! Continue,
//! Break,
//! Fn,
//! Extern,
//! }
//!
//! include!(concat!(env!("OUT_DIR"), "/codegen.rs"));
//!
//! pub fn parse_keyword(keyword: &str) -> Option {
//! KEYWORDS.get(keyword).cloned()
//! }
//! ```
//!
//! ### Byte-String Keys
//! Byte strings by default produce references to fixed-size arrays; the compiler needs a hint
//! to coerce them to slices:
//!
//! build.rs:
//!
//! ```no_run
//! use std::env;
//! use std::fs::File;
//! use std::io::{BufWriter, Write};
//! use std::path::Path;
//!
//! fn main() {
//! let path = Path::new(&env::var("OUT_DIR").unwrap()).join("codegen.rs");
//! let mut file = BufWriter::new(File::create(&path).unwrap());
//!
//! writeln!(
//! &mut file,
//! "static KEYWORDS: phf::Map<&'static [u8], Keyword> = \n{};\n",
//! phf_codegen::Map::<&[u8]>::new()
//! .entry(b"loop", "Keyword::Loop")
//! .entry(b"continue", "Keyword::Continue")
//! .entry(b"break", "Keyword::Break")
//! .entry(b"fn", "Keyword::Fn")
//! .entry(b"extern", "Keyword::Extern")
//! .build()
//! ).unwrap();
//! }
//! ```
//!
//! lib.rs:
//!
//! ```ignore
//! #[derive(Clone)]
//! enum Keyword {
//! Loop,
//! Continue,
//! Break,
//! Fn,
//! Extern,
//! }
//!
//! include!(concat!(env!("OUT_DIR"), "/codegen.rs"));
//!
//! pub fn parse_keyword(keyword: &[u8]) -> Option {
//! KEYWORDS.get(keyword).cloned()
//! }
//! ```
//!
//! ## Note
//!
//! The compiler's stack will overflow when processing extremely long method
//! chains (500+ calls). When generating large PHF data structures, consider
//! looping over the entries or making each call a separate statement:
//!
//! ```rust
//! let entries = [("hello", "1"), ("world", "2")];
//!
//! let mut builder = phf_codegen::Map::new();
//! for &(key, value) in &entries {
//! builder.entry(key, value);
//! }
//! // ...
//! ```
//!
//! ```rust
//! let mut builder = phf_codegen::Map::new();
//! builder.entry("hello", "1");
//! builder.entry("world", "2");
//! // ...
//! ```
#![doc(html_root_url = "https://docs.rs/phf_codegen/0.11")]
#![allow(clippy::new_without_default)]
use phf_shared::{FmtConst, PhfHash};
use std::collections::HashSet;
use std::fmt;
use std::hash::Hash;
use phf_generator::HashState;
struct Delegate(T);
impl fmt::Display for Delegate {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
self.0.fmt_const(f)
}
}
/// A builder for the `phf::Map` type.
pub struct Map {
keys: Vec,
values: Vec,
path: String,
}
impl Map {
/// Creates a new `phf::Map` builder.
pub fn new() -> Map {
// FIXME rust#27438
//
// On Windows/MSVC there are major problems with the handling of dllimport.
// Here, because downstream build scripts only invoke generics from phf_codegen,
// the linker ends up throwing a way a bunch of static symbols we actually need.
// This works around the problem, assuming that all clients call `Map::new` by
// calling a non-generic function.
fn noop_fix_for_27438() {}
noop_fix_for_27438();
Map {
keys: vec![],
values: vec![],
path: String::from("::phf"),
}
}
/// Set the path to the `phf` crate from the global namespace
pub fn phf_path(&mut self, path: &str) -> &mut Map {
self.path = path.to_owned();
self
}
/// Adds an entry to the builder.
///
/// `value` will be written exactly as provided in the constructed source.
pub fn entry(&mut self, key: K, value: &str) -> &mut Map {
self.keys.push(key);
self.values.push(value.to_owned());
self
}
/// Calculate the hash parameters and return a struct implementing
/// [`Display`](::std::fmt::Display) which will print the constructed `phf::Map`.
///
/// # Panics
///
/// Panics if there are any duplicate keys.
pub fn build(&self) -> DisplayMap<'_, K> {
let mut set = HashSet::new();
for key in &self.keys {
if !set.insert(key) {
panic!("duplicate key `{}`", Delegate(key));
}
}
let state = phf_generator::generate_hash(&self.keys);
DisplayMap {
path: &self.path,
keys: &self.keys,
values: &self.values,
state,
}
}
}
/// An adapter for printing a [`Map`](Map).
pub struct DisplayMap<'a, K> {
path: &'a str,
state: HashState,
keys: &'a [K],
values: &'a [String],
}
impl<'a, K: FmtConst + 'a> fmt::Display for DisplayMap<'a, K> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
// funky formatting here for nice output
write!(
f,
"{}::Map {{
key: {:?},
disps: &[",
self.path, self.state.key
)?;
// write map displacements
for &(d1, d2) in &self.state.disps {
write!(
f,
"
({}, {}),",
d1, d2
)?;
}
write!(
f,
"
],
entries: &[",
)?;
// write map entries
for &idx in &self.state.map {
write!(
f,
"
({}, {}),",
Delegate(&self.keys[idx]),
&self.values[idx]
)?;
}
write!(
f,
"
],
}}"
)
}
}
/// A builder for the `phf::Set` type.
pub struct Set {
map: Map,
}
impl Set {
/// Constructs a new `phf::Set` builder.
pub fn new() -> Set {
Set { map: Map::new() }
}
/// Set the path to the `phf` crate from the global namespace
pub fn phf_path(&mut self, path: &str) -> &mut Set {
self.map.phf_path(path);
self
}
/// Adds an entry to the builder.
pub fn entry(&mut self, entry: T) -> &mut Set {
self.map.entry(entry, "()");
self
}
/// Calculate the hash parameters and return a struct implementing
/// [`Display`](::std::fmt::Display) which will print the constructed `phf::Set`.
///
/// # Panics
///
/// Panics if there are any duplicate keys.
pub fn build(&self) -> DisplaySet<'_, T> {
DisplaySet {
inner: self.map.build(),
}
}
}
/// An adapter for printing a [`Set`](Set).
pub struct DisplaySet<'a, T> {
inner: DisplayMap<'a, T>,
}
impl<'a, T: FmtConst + 'a> fmt::Display for DisplaySet<'a, T> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "{}::Set {{ map: {} }}", self.inner.path, self.inner)
}
}
/// A builder for the `phf::OrderedMap` type.
pub struct OrderedMap {
keys: Vec,
values: Vec,
path: String,
}
impl OrderedMap {
/// Constructs a enw `phf::OrderedMap` builder.
pub fn new() -> OrderedMap {
OrderedMap {
keys: vec![],
values: vec![],
path: String::from("::phf"),
}
}
/// Set the path to the `phf` crate from the global namespace
pub fn phf_path(&mut self, path: &str) -> &mut OrderedMap {
self.path = path.to_owned();
self
}
/// Adds an entry to the builder.
///
/// `value` will be written exactly as provided in the constructed source.
pub fn entry(&mut self, key: K, value: &str) -> &mut OrderedMap {
self.keys.push(key);
self.values.push(value.to_owned());
self
}
/// Calculate the hash parameters and return a struct implementing
/// [`Display`](::std::fmt::Display) which will print the constructed
/// `phf::OrderedMap`.
///
/// # Panics
///
/// Panics if there are any duplicate keys.
pub fn build(&self) -> DisplayOrderedMap<'_, K> {
let mut set = HashSet::new();
for key in &self.keys {
if !set.insert(key) {
panic!("duplicate key `{}`", Delegate(key));
}
}
let state = phf_generator::generate_hash(&self.keys);
DisplayOrderedMap {
path: &self.path,
state,
keys: &self.keys,
values: &self.values,
}
}
}
/// An adapter for printing a [`OrderedMap`](OrderedMap).
pub struct DisplayOrderedMap<'a, K> {
path: &'a str,
state: HashState,
keys: &'a [K],
values: &'a [String],
}
impl<'a, K: FmtConst + 'a> fmt::Display for DisplayOrderedMap<'a, K> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(
f,
"{}::OrderedMap {{
key: {:?},
disps: &[",
self.path, self.state.key
)?;
for &(d1, d2) in &self.state.disps {
write!(
f,
"
({}, {}),",
d1, d2
)?;
}
write!(
f,
"
],
idxs: &[",
)?;
for &idx in &self.state.map {
write!(
f,
"
{},",
idx
)?;
}
write!(
f,
"
],
entries: &[",
)?;
for (key, value) in self.keys.iter().zip(self.values.iter()) {
write!(
f,
"
({}, {}),",
Delegate(key),
value
)?;
}
write!(
f,
"
],
}}"
)
}
}
/// A builder for the `phf::OrderedSet` type.
pub struct OrderedSet {
map: OrderedMap,
}
impl OrderedSet {
/// Constructs a new `phf::OrderedSet` builder.
pub fn new() -> OrderedSet {
OrderedSet {
map: OrderedMap::new(),
}
}
/// Set the path to the `phf` crate from the global namespace
pub fn phf_path(&mut self, path: &str) -> &mut OrderedSet {
self.map.phf_path(path);
self
}
/// Adds an entry to the builder.
pub fn entry(&mut self, entry: T) -> &mut OrderedSet {
self.map.entry(entry, "()");
self
}
/// Calculate the hash parameters and return a struct implementing
/// [`Display`](::std::fmt::Display) which will print the constructed
/// `phf::OrderedSet`.
///
/// # Panics
///
/// Panics if there are any duplicate keys.
pub fn build(&self) -> DisplayOrderedSet<'_, T> {
DisplayOrderedSet {
inner: self.map.build(),
}
}
}
/// An adapter for printing a [`OrderedSet`](OrderedSet).
pub struct DisplayOrderedSet<'a, T> {
inner: DisplayOrderedMap<'a, T>,
}
impl<'a, T: FmtConst + 'a> fmt::Display for DisplayOrderedSet<'a, T> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(
f,
"{}::OrderedSet {{ map: {} }}",
self.inner.path, self.inner
)
}
}