https://github.com/ncrashed/stribog
Collection of small utilities for D programming language
https://github.com/ncrashed/stribog
Last synced: 4 months ago
JSON representation
Collection of small utilities for D programming language
- Host: GitHub
- URL: https://github.com/ncrashed/stribog
- Owner: NCrashed
- License: bsl-1.0
- Created: 2015-03-02T15:20:39.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2015-03-26T23:44:15.000Z (about 11 years ago)
- Last Synced: 2025-07-04T00:36:48.162Z (11 months ago)
- Language: D
- Size: 187 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Stribog
[](https://travis-ci.org/NCrashed/stribog)
[](https://gitter.im/NCrashed/stribog?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
This is a collection library that holds all my compile-time utilities developed over long time for several projects. The main target of the library is template magic and code generation.
There are two components in the library:
1. [meta](source/meta) - general purpose extensions of `std.typetuple` and `std.traits` to handle such things as:
* compile-time interfaces
* strict expression lists
* debugging utilities for expression lists
* n-ary template filters, maps, folds, robins, satisfy
* template robin function
* compile time foreach unwinding
* aggregates members introspections
* compile-time stable sorting
2. [container](source/container) - specific containers with compile-time code generation:
* multi key maps - operates like Boost MPL maps, you can define several key-value type pairs.