Structures and Patterns I like to use, in Modern C++
Find a file
2025-09-17 01:06:53 +09:30
testing Added region and renamed interfaces 2025-09-17 01:06:53 +09:30
.clang-format Initial commit 2025-09-16 12:34:10 +09:30
.clangd Add EventStream 2025-09-17 00:01:14 +09:30
event.h Added region and renamed interfaces 2025-09-17 01:06:53 +09:30
LICENSE Initial commit 2025-09-16 12:34:10 +09:30
list.h Added region and renamed interfaces 2025-09-17 01:06:53 +09:30
README.md Added region and renamed interfaces 2025-09-17 01:06:53 +09:30
region.h Added region and renamed interfaces 2025-09-17 01:06:53 +09:30

omni

Structures and Patterns I like to use in Modern C++(20)

Features

  • Header(s) only, each feature separated into its own header
  • No dependencies
  • Templated
  • C++20

omni::list

Stock-standard linked list

  • queue-like and stack-like (push, pop, nq, dq)
  • "random access" (operator[])
  • sorting (eventually)

omni::event_stream

Primitive structure useful for things like:

  • input handling
  • button press detection
  • double-clicks
  • etc.

omni::region

Helpful for mapping and testing rectangular regions of a screen or widget

  • resetting bounds and testing bounds
  • exclusions and exclusion bounds (eventually)