Cortex Library
A library of general purpose types, classes, functions, algorithms, utilities and other components for C++.
Development Status
Cortex is pretty unstable and currently undergoes regular changes. It also has limited testing meaning that meaning it could break. There is no promise for long-term support and may evolve without regard to backwards compatibility. That being said I do plan to stabilise the library more with time.
Features
Cortex is a library with a bunch of random components from different data structures and algorithms to concurrency tools and general utilities. Everything in Cortex is kept within the cxl
namespace and is broken down into three separate sub-libraries. These being:
- containers/. . .
- iterators/. . .
- utilities/. . .
Containers
Cortex features a few unique, general purpose container types designed to compliment the existing C++ standard library containers and algorithms.
List of Containers
cxl::matrix
- Generic, owning 2D array.cxl::tensor
- Generic, owning multidimensional array (in dev).
Iterators
Iterators library is designed to compliment the containers library and offer different traversal patterns across various data structures.
List of Iterators
cxl::normal_iterator
- A iterator that adapts non-object iterators (pointers) into object iterators while keeping the original entities semantics.
Utilities
Cortex's utilities library contains various general purpose utility objects and types.
List of Utilities
cxl::utils::match
- A visitor object type allowing for conditional access to astd::variant
.cxl::utils::match_any
- A type which acts as the base fallthrough match for a match expression.