/// @mainpage
/// @section About
///
/// primesieve is a C/C++ library for quickly generating prime numbers.
/// It generates the primes below 10^9 in just 0.2 seconds on a single
/// core of an Intel Core i7-6700 3.4GHz CPU. primesieve can generate
/// primes and prime k-tuplets up to 2^64. primesieve's memory
/// requirement is about pi(sqrt(n)) * 8 bytes per thread, its
/// run-time complexity is O(n log log n) operations. The recommended
/// way to get started is to first have a look at a few C or C++
/// example programs. The most common use cases are iterating over
/// primes using @link primesieve::iterator::next_prime() next_prime() @endlink
/// or @link primesieve::iterator::prev_prime() prev_prime() @endlink and
/// storing primes in a vector or an array.
///
/// For more information please visit https://github.com/kimwalisch/primesieve.
///
/// @section Installation Installation
///
/// @li Install libprimesieve using package manager.
/// @li Build libprimesieve from source.
///
/// @section C_API C API
///
/// @li @link primesieve.h primesieve.h @endlink - primesieve C header.
/// @li @link iterator.h primesieve_iterator @endlink - Provides the primesieve_next_prime() and primesieve_prev_prime() functions.
/// @li C examples - Example programs that show how to use libprimesieve.
/// @li C error handling - How to detect and handle errors.
/// @li Link against libprimesieve.
///
/// @section CPP_API C++ API
///
/// @li @link primesieve.hpp primesieve.hpp @endlink - primesieve C++ header.
/// @li primesieve::iterator - Provides the @link primesieve::iterator::next_prime() next_prime() @endlink and @link primesieve::iterator::prev_prime() prev_prime() @endlink methods.
/// @li C++ examples - Example programs that show how to use libprimesieve.
/// @li C++ error handling - How to detect and handle errors.
/// @li Link against libprimesieve.
///
/// @section Performance_tips Performance tips
///
/// @li libprimesieve performance tips.
/// @li libprimesieve multi-threading tips.
///