Kerbal 2025.11.1

dotnet add package Kerbal --version 2025.11.1
                    
NuGet\Install-Package Kerbal -Version 2025.11.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Kerbal" Version="2025.11.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Kerbal" Version="2025.11.1" />
                    
Directory.Packages.props
<PackageReference Include="Kerbal" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Kerbal --version 2025.11.1
                    
#r "nuget: Kerbal, 2025.11.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Kerbal@2025.11.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Kerbal&version=2025.11.1
                    
Install as a Cake Addin
#tool nuget:?package=Kerbal&version=2025.11.1
                    
Install as a Cake Tool

Kerbal

language English |

Static Badge Codacy grade License

Vcpkg Version NuGet Version

GitHub code size in bytes GitHub test code size in bytes

GitHub last commit GitHub commit activity GitHub commit activity GitHub commit activity

C++ template library with:

  1. more fundamental features,
  2. modern standard library facilities backport to old,
  3. and MORE constexpr!

Install

I) Install via Package Managers
1. Vcpkg

Vcpkg environment is required, see Vcpkg

vcpkg install kerbal
2. NuGet

See Home Page of this project

nuget install kerbal
II) Install via Source
  1. clone repository
git clone https://github.com/WentsingNee/Kerbal.git
cd Kerbal
  1. clone git submodules (if you need)
git submodule init
git submodule update
  1. configure by CMake
mkdir build
cmake -S . -B build/ \
    -DCMAKE_BUILD_TYPE=Release

    # the following arguments are optional

    # the path prefix to install Kerbal
    -DCMAKE_INSTALL_PREFIX=`the-path-prefix-you-want-to-install`
    # default is set to your system path

    # the package generator(s) enabled during the cpack stage
    -DCPACK_GENERATOR=`package-generators-you-want`
    # default is set to "DEB;STGZ;TGZ;ZIP"

    # whether install pretty printer files
    # git submodule of `pretty_printer` is required to be existed
    -DKERBAL_INSTALL_PRETTY_PRINTER=True # or False
    # default value is decided by the existence of `pretty_printer` submodule
  1. install
cd build
cmake --build . --target install

then Kerbal will be installed to CMAKE_INSTALL_PREFIX

  1. generate package (if you need)
cd build
cpack .

Integrate Kerbal In Your CMake Project

find_package(Kerbal REQUIRED)
target_link_libraries(
        your-target PRIVATE
        Kerbal::kerbal
        [Kerbal::kerbal-omp] # maybe required when you have used Kerbal::omp module
)

Sub Libraries Overview

Library Brief
Kerbal::kerbal
algorithm algorithm
any std::any-like facility but backport to C++98, together with C++20 constexpr support
assign std::initializer_list-like facility for C++98
autonm autonomous containers, having flexible memory (de)allocation like intrusive containers but have no intrusion to value type
bitset static_bitset (like std::bitset but have more function and constexpr support)
compare comparators and sequence compare
compatibility compatibility macros
config architecture, compiler, OS platform, std library environment detection
container array, vector, static_vector, list, forward_list, priority_queue ...
function function, function_traits, invoke, invoke_r ...
hash hash support
iterator iterator support
macro macro utilities
memory memory management support like allocator, uninitialized algorithms
numeric numeric algorithms
operators use CRTP to simplify operator overload
optional std::optional-like facility but backport to C++98
random random number engines and distributions
smath static math
test unit test
tmp template meta programming facilities
type_traits C++11 <type_traits>-like facilities but backport part to C++98
utility compressed_pair, tuple ...
Kerbal::kerbal-coroutine
coroutine coroutine facilities
Kerbal::kerbal-omp
ompalgo openMP accelerated algorithms
openmp openMP facilities and environment detection
Kerbal::kerbal-parallel
parallel parallel facilities

Document

  • Doxygen generated document: click this

Thanks

ThinkSpirit Laboratory of Nanjing University of Information Science and Technology

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2025.11.1 432 11/10/2025
2025.8.1 395 9/24/2025
2025.5.1 830 7/23/2025
2024.11.1 415 11/22/2024