Github   Telegram
Loading...
Searching...
No Matches
Nested Groups | Classes | Typedefs | Enumerations
Containers

Utility containers. More...

+ Collaboration diagram for Containers:

Nested Groups

 Formats
 Different containers that share the same interface and manipulate tree-like formats.
 

Classes

class  cache::LruMap< T, U, Hash, Equal >
 
class  cache::LruSet< T, Hash, Equal >
 
class  decimal64::Decimal< Prec, RoundPolicy_ >
 Fixed-point decimal data type for use in deterministic calculations, oftentimes involving money. More...
 
class  formats::json::StringBuilder
 SAX like builder of JSON string. Use with extreme caution and only in performance critical part of your code. More...
 
class  formats::json::Value
 Non-mutable JSON value representation. More...
 
class  formats::json::ValueBuilder
 Builder for JSON. More...
 
class  formats::yaml::Value
 Non-mutable YAML value representation. More...
 
class  formats::yaml::ValueBuilder
 Builder for YAML. More...
 
class  fs::blocking::CFile
 A std::FILE* wrapper. More...
 
class  fs::blocking::FileDescriptor
 A file descriptor wrapper. More...
 
class  fs::blocking::TempDirectory
 A unique directory for temporary files. The directory is deleted when the TempDirectory is destroyed. More...
 
class  fs::blocking::TempFile
 A unique temporary file. The file is deleted when the TempFile object is destroyed. More...
 
class  http::ContentType
 Content-Type representation. More...
 
class  utils::AnyMovable
 Replacement for std::any that is not copyable. It allows to store non-copyable and even non-movable types. More...
 
class  utils::CheckedPtr< T >
 Utility template for returning a pointer to an object that is owned by someone else; throws std::runtime_error if nullptr is stored. More...
 
class  utils::datetime::Date
 Date in format YYYY-MM-DD, std::chrono::year_month_day like type. More...
 
class  utils::FastPimpl< T, Size, Alignment, Strict >
 Implements pimpl idiom without dynamic memory allocation. More...
 
class  utils::FastScopeGuard< Callback >
 a helper class to perform actions on scope exit More...
 
class  utils::FixedArray< T >
 A fixed-size array with the size determined at runtime. More...
 
class  utils::Flags< Enum >
 Wrapper to extend enum with flags interface. More...
 
class  utils::AtomicFlags< Enum >
 Wrapper to extend enum with atomic flags interface. More...
 
class  utils::NotNull< T >
 Restricts a pointer or smart pointer to only hold non-null values. More...
 
class  utils::OptionalRef< T >
 Class that behaves as a nullable reference. Main difference from the pointer - value comparison of pointed values. More...
 
class  utils::regex
 Small alias for boost::regex / std::regex without huge includes. More...
 
class  utils::ScopeGuard
 a helper class to perform actions on scope exit More...
 
class  utils::SharedReadablePtr< T >
 std::shared_ptr<const T> wrapper that makes sure that the pointer is stored before dereferencing. Protects from dangling references: More...
 
class  utils::StrongTypedef< Tag, T, Ops, class >
 Strong typedef for a type T. More...
 
class  utils::datetime::TimeOfDay< Duration >
 A simple implementation of a "time since midnight" datatype. More...
 
class  cache::ExpirableLruCache< Key, Value, Hash, Equal >
 Class for expirable LRU cache. Use cache::LruMap for not expirable LRU Cache. More...
 
class  cache::NWayLRU< T, U, Hash, Equal >
 
class  concurrent::BackgroundTaskStorageCore
 
class  concurrent::BackgroundTaskStorage
 
class  concurrent::MutexSet< Key, Hash, Equal >
 A dynamic set of mutexes. More...
 
class  concurrent::Variable< Data, Mutex >
 
class  rcu::Variable< T >
 Read-Copy-Update variable. More...
 
class  rcu::RcuMap< Key, Value >
 Map-like structure allowing RCU keyset updates. More...
 
class  server::http::Cookie
 HTTP response cookie. More...
 
class  utils::LazySharedPtr< T >
 A lazy wrapper around utils::SharedReadablePtr that fetches the data on first access. More...
 
class  storages::postgres::ParameterStore
 Class for dynamic PostgreSQL parameter list construction. More...
 

Typedefs

template<typename U >
using utils::SharedRef = NotNull< std::shared_ptr< U > >
 A std::shared_ptr that is guaranteed to be not-null. More...
 
template<typename U >
using utils::UniqueRef = NotNull< std::unique_ptr< U > >
 A std::unique_ptr that is guaranteed to be not-null. More...
 

Enumerations

enum class  utils::BytesPerSecond : long long
 Data type that represents bytes per second unit. More...
 

Detailed Description

Utility containers.

Typedef Documentation

◆ SharedRef

template<typename U >
using utils::SharedRef = typedef NotNull<std::shared_ptr<U> >

A std::shared_ptr that is guaranteed to be not-null.

See also
MakeSharedRef

Definition at line 100 of file not_null.hpp.

◆ UniqueRef

template<typename U >
using utils::UniqueRef = typedef NotNull<std::unique_ptr<U> >

A std::unique_ptr that is guaranteed to be not-null.

See also
MakeUniqueRef

Definition at line 107 of file not_null.hpp.

Enumeration Type Documentation

◆ BytesPerSecond

enum class utils::BytesPerSecond : long long
strong

Data type that represents bytes per second unit.

Definition at line 17 of file bytes_per_second.hpp.