# textproc/nlohmann-json - The NetBSD Packages Collection

JSON library for Modern C++

    JSON for Modern C++ is an open-source library consisting of a C++11-style
    header-only JSON class.

    Its stated goals are:
    Intuitive syntax. In languages such as Python, JSON feels like a first class
    data type. We used all the operator magic of modern C++ to achieve the same
    feeling in your code.

    Trivial integration. Our whole code consists of a single header file json.hpp.
    The class is written in vanilla C++11. All in all, everything should require
    no adjustment of your compiler flags or project settings.

    Serious testing. Our code is heavily unit-tested and covers 100% of the code,
    including all exceptional behavior. Furthermore, we checked with Valgrind and
    the Clang Sanitizers that there are no memory leaks. Google OSS-Fuzz
    additionally runs fuzz tests against all parsers 24/7, effectively executing
    billions of tests so far. To maintain high quality, the project is following
    the Core Infrastructure Initiative (CII) best practices.

    Other aspects were not so important to us:
    Memory efficiency. Each JSON object has an overhead of one pointer (the
    maximal size of a union) and one enumeration element (1 byte). The default
    generalization uses the following C++ data types: std::string for strings,
    int64_t, uint64_t or double for numbers, std::map for objects, std::vector
    for arrays, and bool for Booleans. However, you can template the generalized
    class basic_json to your needs.

    Speed. There are certainly faster JSON libraries out there. However, if your
    goal is to speed up your development by adding JSON support with a single
    header, then this library is the way to go. If you know how to use
    a std::vector or std::map, you are already set.

- Source version: `nlohmann-json-3.11.2`
- Maintainer: pkgsrc-users AT NetBSD.org
- Website: https://json.nlohmann.me/
- License: mit
- Package history: cvs, hg, git

## Build dependencies

devel/cmake pkgtools/mktools pkgtools/cwrappers

## Runtime dependencies

(none)

## Binary packages

OS | Architecture | Version
--- | --- | ---
NetBSD 10.0 | aarch64 | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | aarch64 | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | aarch64eb | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | alpha | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | alpha | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | earmv4 | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | earmv6hf | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | earmv6hf | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | earmv7hf | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | earmv7hf | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | i386 | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | i386 | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | powerpc | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | powerpc | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | sh3el | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | sparc64 | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | sparc | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | sparc | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | vax | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | vax | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | x86_64 | nlohmann-json-3.11.2.tgz
NetBSD 10.0 | x86_64 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | aarch64 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | aarch64 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | alpha | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | alpha | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | earm | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | earmv4 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | earmv4 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | earmv6hf | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | earmv6hf | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | earmv7hf | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | earmv7hf | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | i386 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | i386 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | mips64eb | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | powerpc | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | powerpc | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | sh3el | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | sparc64 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | sparc64 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | sparc | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | vax | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | x86_64 | nlohmann-json-3.11.2.tgz
NetBSD 9.0 | x86_64 | nlohmann-json-3.11.2.tgz
NetBSD 9.3 | x86_64 | nlohmann-json-3.11.2.tgz
NetBSD 9.3 | x86_64 | nlohmann-json-3.11.2.tgz

Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.

## Available build options

tests
  Build and install tests.

## Known vulnerabilities

(no vulnerabilities known)

The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.

Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.

Problem reports, updates or suggestions for this package should be reported with send-pr.