Skip to content

A collection of utility classes and functions for C++

License

Notifications You must be signed in to change notification settings

mostsignificant/util

Repository files navigation

util

CI Codacy Badge Documentation License

This library is a collection of utility classes and functions for C++. It is a collection of independent self-contained headers. This means you can just copy-paste individual header files from this library and use them in your project without additional setup.

Features

Data structures

  • util::buffer, a fixed-size data storage with additional dynamic storage if needed
  • util::ring_buffer, a fixed-sized container behaving like an end-to-end connected queue
  • util::sorted, a wrapper for keeping containers sorted

Iterators

  • util::enumerate, a Python-like helper to iterate through a container with value and index
  • util::multirator, an iterator that can go through several ranges simultaneously
  • util::range, a Python-like helper to create a quick range

Helper

  • util::flags, a type-safe way of storing or-combinations of enum values
  • util::non_copyable and util::non_moveable, for disallowing copying or moving on objects
  • util::var, for enforcing more strict named typing
  • util::ignore_unused, to circumvent compiler warnings about unused variables

Resource management

  • util::scoped
  • util::shared

Usage

There are two versions of using the util library: individual headers or the whole library.

About

A collection of utility classes and functions for C++

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published