blob: 6d495db4d593e5fa1b8f8dddfe8a656284da2034 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
# Open C++ Library
[](LICENSE)
## Brief:
A C++ library with additional modules for your C++ SDLC.
## Requirements:
- Boost C++ libraries (https://www.boost.org/)
- Clang (https://clang.llvm.org/)
- Git (https://git-scm.com/)
## Structure:
- `core`: Core utilities and fundamental abstractions used across OCL.
- `except`: Exception classes and error-handling helpers.
- `fix`: FIX protocol utilities and helpers for Financial Information eXchange integration.
- `io`: Input/output utilities, stream helpers, and file handling.
- `logic`: Logic facilities, macros, and helpers for programs.
- `memory`: Memory management utilities, allocators, and smart-pointer helpers.
- `net`: Networking utilities and lightweight socket helpers.
- `simd`: SIMD-optimized algorithms and low-level performance helpers.
- `tests`: Unit and integration tests that validate OCL components.
- `utility`: General-purpose helper functions and small algorithms.
## Examples:
### Logic Module (Option container)
```cpp
#include <logic/opt.hpp>
int main(int argc, char** argv)
{
auto opt = ocl::opt(ocl::eval_eq(50, 50)).expect("ocl::eval_eq, does not match!");
opt = ocl::opt(ocl::eval_eq(50, 40));
opt.expect("this time it doesn't.");
return EXIT_SUCCESS;
}
```
##### (c) 2025 Amlal El Mahrouss, licensed under the Boost Software License.
|