enum_set/0.1.0-a.1

[full]

A library of type safe sets over fixed size collections of types or values, including methods for accessing, modifying, visiting and iterating over those.

Build status Code coverage GitHub release License

A library of type safe sets over fixed size collections of types or values, including methods for accessing, modifying, visiting and iterating over those.

Rationale

Enums are great, as long as you use them to represent individual flags or options. If you want to represent a set of options using an enumeration, one would typically let the values of the enumeration take on powers of two and then "or" them together

enum class option
{
    A = (1 << 0),
    B = (1 << 1),
    C = (1 << 2)
};

int operator|(option lhs, option rhs)
{
    return static_cast<int>(lhs) | static_cast<int>(rhs);
}
... More
version 0.1.0-a.1
license MITMIT License
repository pkg:cppget.org/alpha
location https://pkg.cppget.org/1/alpha
download enum_set-0.1.0-a.1.tar.gz
sha256 ae8f27819e04c14b9f37411863eaec366f629ef58df4618c27235d1d331a6562
project enum_set
url github.com/cdeln/cpp_enum_set
src-url github.com/cdeln/cpp_enum_set
topics enum setstype setstype safetyfixed size containers

Depends (2)

doctest ^2.3.6For testing
magic_enum ^0.7.2For magic enum integration

Requires (1)

c++ >= 17

Builds

toolchain public-0.13.0
config windows_10-gcc_9.2_mingw_w64-O3 / x86_64-w64-mingw32
timestamp 2021-09-19 02:13:22 UTC (10:50 minutes ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-gcc_9.2_mingw_w64-static_O3 / x86_64-w64-mingw32
timestamp 2021-09-19 02:10:54 UTC (13:18 minutes ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-gcc_9.2_mingw_w64 / x86_64-w64-mingw32
timestamp 2021-09-19 02:07:14 UTC (16:58 minutes ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-clang_10.0_llvm_msvc_16.6-O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-09-19 01:34:56 UTC (49:16 minutes ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-clang_10.0_llvm_msvc_16.6-static_O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-09-18 22:53:03 UTC (03:31:09 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-clang_10.0_llvm_msvc_16.6_lld / x86_64-microsoft-win32-msvc14.2
timestamp 2021-09-18 22:28:30 UTC (03:55:42 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-clang_10.0_llvm_msvc_16.6 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-09-18 22:23:37 UTC (04:00:35 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config macos_10.15-gcc_9.3_homebrew / x86_64-apple-darwin19.0.0
timestamp 2021-09-18 20:41:26 UTC (05:42:47 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config macos_10.15-gcc_9.3_homebrew-O3 / x86_64-apple-darwin19.0.0
timestamp 2021-09-18 20:35:22 UTC (05:48:50 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config macos_10.15-gcc_9.3_homebrew-static_O3 / x86_64-apple-darwin19.0.0
timestamp 2021-09-18 20:32:25 UTC (05:51:47 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config macos_10.15-clang_11.0-O3 / x86_64-apple-darwin19.0.0
timestamp 2021-09-18 20:26:13 UTC (05:58:00 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config macos_10.15-clang_11.0-static_O3 / x86_64-apple-darwin19.0.0
timestamp 2021-09-18 20:23:32 UTC (06:00:40 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config macos_10.15-clang_11.0 / x86_64-apple-darwin19.0.0
timestamp 2021-09-18 20:22:27 UTC (06:01:45 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config macos_10.14-clang_10.0 / x86_64-apple-darwin18.6.0
timestamp 2021-09-18 20:15:05 UTC (06:09:07 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_10.0_libc++-O3 / x86_64-linux-gnu
timestamp 2021-09-18 19:19:03 UTC (07:05:09 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_10.0_libc++-static_O3 / x86_64-linux-gnu
timestamp 2021-09-18 19:13:00 UTC (07:11:12 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_10.0-O3 / x86_64-linux-gnu
timestamp 2021-09-18 19:09:58 UTC (07:14:14 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_10.0-static_O3 / x86_64-linux-gnu
timestamp 2021-09-18 19:03:48 UTC (07:20:24 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config freebsd_12-clang_8.0-static_O3 / x86_64-freebsd12.1
timestamp 2021-09-18 19:01:35 UTC (07:22:37 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_10.0_libc++ / x86_64-linux-gnu
timestamp 2021-09-18 18:59:56 UTC (07:24:16 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_9.0 / x86_64-linux-gnu
timestamp 2021-09-18 18:57:38 UTC (07:26:34 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_10.0 / x86_64-linux-gnu
timestamp 2021-09-18 18:56:15 UTC (07:27:57 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-clang_9.0_libc++ / x86_64-linux-gnu
timestamp 2021-09-18 18:26:12 UTC (07:58:00 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config freebsd_12-clang_8.0-O3 / x86_64-freebsd12.1
timestamp 2021-09-18 18:25:52 UTC (07:58:20 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-gcc_10.1-static_O3 / x86_64-linux-gnu
timestamp 2021-09-18 18:21:14 UTC (08:02:58 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-gcc_10.1-O3 / x86_64-linux-gnu
timestamp 2021-09-18 18:19:32 UTC (08:04:40 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config freebsd_12-clang_8.0 / x86_64-freebsd12.1
timestamp 2021-09-18 18:11:15 UTC (08:12:57 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-clang_9.0_llvm_msvc_16.4 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-09-18 18:01:41 UTC (08:22:31 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config windows_10-clang_10.0_msvc_msvc_16.6 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-09-18 17:51:05 UTC (08:33:07 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-gcc_10.1 / x86_64-linux-gnu
timestamp 2021-09-18 17:48:54 UTC (08:35:18 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config linux_debian_10-gcc_9.3 / x86_64-linux-gnu
timestamp 2021-09-18 17:45:16 UTC (08:38:56 hours ago)
result success | log | rebuild
toolchain public-0.13.0
config freebsd_12-clang_6.0 / x86_64-freebsd12.0
timestamp 2021-09-18 17:36:31 UTC (08:47:41 hours ago)
result success | log | rebuild
config windows_10_devmode-msvc_16.4 / x86_64-microsoft-win32-msvc14.2
result excluded
config windows_10-msvc_16.5 / x86_64-microsoft-win32-msvc14.2
result excluded
config windows_10-msvc_16.6 / x86_64-microsoft-win32-msvc14.2
result excluded
config windows_10-msvc_16.6-O2 / x86_64-microsoft-win32-msvc14.2
result excluded
config windows_10-msvc_16.6-static_O2 / x86_64-microsoft-win32-msvc14.2
result excluded