Skip to content

Commit

Permalink
Add README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Beihao-Zhou committed Jun 23, 2024
1 parent 11c9686 commit 6377cc2
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,33 @@
# CompileTimeLib
A compile-time C++ library

## Features
- **Static Set**: A compile-time set container that ensures unique elements.
- **Static Vector**: A compile-time vector container.

## Next
- **Compile-Time Algorithms**: Functions that perform operations such as sorting and searching during compilation.
- **Compile-Time Serialization**: Techniques for serializing data at compile time.


## Getting Started

### Prerequisites
- C++17 compiler (e.g., GCC, Clang, MSVC)
- CMake 3.10 or higher (for building the project)

### Installation
Commands to format, build and test can be found in `manage.py`.

## Usage
Here is an example of how to use the `static_set` in your C++ code:
```cpp
int main() {
using MySet = ct_container::static_set<int>::insert<1>::insert<2>::insert<3>;
static_assert(MySet::contains<2>(), "Set should contain 2");
return 0;
}
```

## License
Distributed under the MIT License. See `LICENSE` for more information.

0 comments on commit 6377cc2

Please sign in to comment.