hana
mio
Our great sponsors
hana | mio | |
---|---|---|
4 | 8 | |
1,635 | 1,630 | |
1.7% | - | |
5.1 | 0.0 | |
12 days ago | 3 months ago | |
C++ | C++ | |
Boost Software License 1.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
hana
-
What are some C++ projects with high quality code that I can read through?
I like boost::hana. Wish I had more chances to use it at work.
-
Simple `struct` static reflection system I use that tracks names, attributes (in my own code I also keep `constexpr` hashes of names) -- example gets fully inlined into `main()`
And then there's also the longstanding issue with default member initializers -- https://github.com/boostorg/hana/issues/409 -- which was a deal-breaker.The PROP system avoids this issue precisely by having the macro be as local as possible: the default member initializer is outside the macro. It does this while still letting you attach additional PropAttribs metadata (I'm not sure what additional metadata attachment looks like in Hana? haven't really tried). Default values and additional attributes are by and large quite more important to me in my use cases for reflection (component types in game ECS) than range syntax (everything I've needed and can think of needing is covered by for-each loop).
-
cppa2z - Document modern C++ using unit tests
oh yes definitely, but I meant more the particular way I've done it so far - which has been to implement something similar to boost::hana::is_valid(), to make it take the least amount of boilerplate code per-use-case as possible: zero additional lines of code.
-
C Implementation Challenge Replacing Stdmove And
Boost.Hana developers measured a very noticeable 15% decrease in compile time switching from a function call (admittedly -- with an additional layer of wrapper) to a raw static_cast. foonathan himself saw a little over a 5% decrease in his actual code. miki151 saw about a 3% improvement from replacing move with MOV only, ignoring forward. In a completely synthetic benchmark where I just generate a ton of move calls in a row, I get a little over 40% decrease in compile time.
mio
-
Is there a good cross-platform (Windows / Linux) C or C++ library for file I/O?
As simple and clean example you can see https://github.com/mandreyel/mio readme.md
- Why are people willing to pay 100$ a year for an IDE?
-
How to parse two int values per line from a char* array from memory map
I loaded a 7Gb file into a memory map using the mio header file. The mmap variable is a char* array. I used a short file since this is my first time attempting a memory mapped file. This is the text2.txt file
-
Using mio header file to read in large file
I am using this mio header file and attempting to read in a 7GB file. This is taking a long time to execute so I stop the execution. I am reading in a small file just to test this out.
-
Reading a 7GB file into memore using mio.hpp header
A great fellow redditor showed me this memory mapping header file to read in large files. This is how I am using it with a syntax error.
- File Handling in C++
-
Fastest way to read very large file(Gb to Tb) in C++
I would memory map it. Use this lib: https://github.com/mandreyel/mio
What are some alternatives?
sml - C++14 State Machine library
llfio - P1031 low level file i/o and filesystem library for the C++ standard
dyno - Runtime polymorphism done right
filesystem - An implementation of C++17 std::filesystem for C++11 /C++14/C++17/C++20 on Windows, macOS, Linux and FreeBSD.
robin-hood-hashing - Fast & memory efficient hashtable based on robin hood hashing for C++11/14/17/20
doctest - The fastest feature-rich C++11/14/17/20/23 single-header testing framework
Lyra - A simple to use, composable, command line parser for C++ 11 and beyond
prelockd - Lock executables and shared libraries in memory to improve system responsiveness under low-memory conditions
cppa2z - Document modern C++ using unit tests
RapidJSON - A fast JSON parser/generator for C++ with both SAX/DOM style API