Skip to content

Commit 40ddf7e

Browse files
Add rationale
1 parent a393bf0 commit 40ddf7e

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

README.md

+11
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
11
# `mmio`
22
[![Main CI](https://img.shields.io/github/workflow/status/Ryan-rsm-McKenzie/mmio/Main%20CI?logo=github&style=flat)](https://github.com/Ryan-rsm-McKenzie/mmio/actions/workflows/main_ci.yml)
33
[![Codecov](https://img.shields.io/codecov/c/github/Ryan-rsm-McKenzie/mmio?logo=codecov&logoColor=white&style=flat)](https://app.codecov.io/gh/Ryan-rsm-McKenzie/mmio)
4+
5+
## What is `mmio`?
6+
`mmio` is a really simple, really small library for handling memory-mapped io on windows and linux.
7+
8+
## Why not [`boost::iostreams::mapped_file`](https://www.boost.org/doc/libs/1_76_0/libs/iostreams/doc/classes/mapped_file.html)?
9+
A couple reasons:
10+
- It requires you to use Boost.
11+
- Passing unicode paths requires you to use `boost::filesystem`, which requires you to use _even more_ of Boost, and interops pretty terribly with `std::filesystem`.
12+
13+
## Why not [`mio`](https://github.com/mandreyel/mio)?
14+
Being a header only library, it includes system headers into your code, and I don't enjoy fighting tooth and nail with `windows.h` for common identifiers.

0 commit comments

Comments
 (0)