[
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__alignas_is_defined",
    "link": "cpp/types",
    "marks": {
      "since": "c++11"
    },
    "description": "C compatibility macro constant, expands to integer literal 1"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__bool_true_false_are_defined",
    "link": "cpp/types",
    "marks": {
      "since": "c++11"
    },
    "description": "C compatibility macro constant, expands to integer literal 1"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "_Atomic",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++23"
    },
    "description": "compatibility macro such that _Atomic(T) is identical to std::atomic<T>"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "_IOFBF",
    "link": "cpp/io/c",
    "marks": {},
    "description": "argument to std::setbuf indicating fully buffered I/O\nargument to std::setbuf indicating line buffered I/O\nargument to std::setbuf indicating unbuffered I/O"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "_IOLBF",
    "link": "cpp/io/c",
    "marks": {},
    "description": "argument to std::setbuf indicating fully buffered I/O\nargument to std::setbuf indicating line buffered I/O\nargument to std::setbuf indicating unbuffered I/O"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "_IONBF",
    "link": "cpp/io/c",
    "marks": {},
    "description": "argument to std::setbuf indicating fully buffered I/O\nargument to std::setbuf indicating line buffered I/O\nargument to std::setbuf indicating unbuffered I/O"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "assert",
    "link": "cpp/error/assert",
    "marks": {},
    "description": "aborts the program if the user-specified condition is not true. May be disabled for release builds."
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_BOOL_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_CHAR_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_CHAR16_T_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_CHAR32_T_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_CHAR8_T_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_FLAG_INIT",
    "link": "cpp/atomic/ATOMIC_FLAG_INIT",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "description": "initializes an std::atomic_flag to false"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_INT_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_LLONG_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_LONG_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_POINTER_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_SHORT_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "ATOMIC_VAR_INIT",
    "link": "cpp/atomic/ATOMIC_VAR_INIT",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "description": "constant initialization of an atomic variable of static storage duration"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ATOMIC_WCHAR_T_LOCK_FREE",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "BUFSIZ",
    "link": "cpp/io/c",
    "marks": {},
    "description": "size of the buffer used by std::setbuf"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "CHAR_BIT",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "number of bits in a byte"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "CHAR_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of char"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "CHAR_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum value of char"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "CLOCKS_PER_SEC",
    "link": "cpp/chrono/c/CLOCKS_PER_SEC",
    "marks": {},
    "description": "number of processor clock ticks per second"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_DECIMAL_DIG",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "conversion from float/double/long double to decimal with at least FLT_DECIMAL_DIG/DBL_DECIMAL_DIG/LDBL_DECIMAL_DIG digits and back is the identity conversion: this is the decimal precision required to serialize/deserialize a floating-point value (see also std::numeric_limits::max_digits10). Defined to at least 6, 10, and 10 respectively, or 9 for IEEE float and 17 for IEEE double."
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_DIG",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "number of decimal digits that are guaranteed to be preserved in text → float/double/long double → text roundtrip without change due to rounding or overflow (see std::numeric_limits::digits10 for explanation)"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_EPSILON",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "difference between 1.0 and the next representable value for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_HAS_SUBNORM",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "specifies whether the type supports subnormal (denormal) numbers:\n-1 – indeterminable, ​0​ – absent, 1 – present"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_MANT_DIG",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "number of base FLT_RADIX digits that can be represented without losing precision for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum finite value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_MAX_10_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum positive integer such that 10 raised to that power is a representable finite float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_MAX_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum positive integer such that FLT_RADIX raised by power one less than that integer is a representable finite float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum normalized positive value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_MIN_10_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum negative integer such that 10 raised to that power is a normalized float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_MIN_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum negative integer such that FLT_RADIX raised by power one less than that integer is a normalized float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DBL_TRUE_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "minimum positive value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "DECIMAL_DIG",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "conversion from long double to decimal with at least DECIMAL_DIG digits and back to long double is the identity conversion: this is the decimal precision required to serialize/deserialize a long double (see also std::numeric_limits::max_digits10)"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "E2BIG",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Argument list too long"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EACCES",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Permission denied"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EADDRINUSE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Address in use"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EADDRNOTAVAIL",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Address not available"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EAFNOSUPPORT",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Address family not supported"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EAGAIN",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Resource unavailable, try again"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EALREADY",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Connection already in progress"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EBADF",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Bad file descriptor"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EBADMSG",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Bad message"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EBUSY",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Device or resource busy"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ECANCELED",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Operation canceled"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ECHILD",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No child processes"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ECONNABORTED",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Connection aborted"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ECONNREFUSED",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Connection refused"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ECONNRESET",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Connection reset"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EDEADLK",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Resource deadlock would occur"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EDESTADDRREQ",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Destination address required"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EDOM",
    "link": "cpp/error/errno_macros",
    "marks": {},
    "description": "Mathematics argument out of domain of function"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EEXIST",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "File exists"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EFAULT",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Bad address"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EFBIG",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "File too large"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EHOSTUNREACH",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Host is unreachable"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EIDRM",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Identifier removed"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EILSEQ",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Illegal byte sequence"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EINPROGRESS",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Operation in progress"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EINTR",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Interrupted function"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EINVAL",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Invalid argument"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EIO",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "I/O error"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EISCONN",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Socket is connected"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EISDIR",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Is a directory"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ELOOP",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Too many levels of symbolic links"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EMFILE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "File descriptor value too large"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EMLINK",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Too many links"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EMSGSIZE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Message too large"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENAMETOOLONG",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Filename too long"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENETDOWN",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Network is down"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENETRESET",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Connection aborted by network"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENETUNREACH",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Network unreachable"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENFILE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Too many files open in system"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOBUFS",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No buffer space available"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENODATA",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No message is available on the STREAM head read queue"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENODEV",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No such device"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOENT",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No such file or directory"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOEXEC",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Executable file format error"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOLCK",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No locks available"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOLINK",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Link has been severed"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOMEM",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Not enough space"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOMSG",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No message of the desired type"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOPROTOOPT",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Protocol not available"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOSPC",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No space left on device"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOSR",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No STREAM resources"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOSTR",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Not a STREAM"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOSYS",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Function not supported"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOTCONN",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "The socket is not connected"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOTDIR",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Not a directory"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOTEMPTY",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Directory not empty"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOTRECOVERABLE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "State not recoverable"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOTSOCK",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Not a socket"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOTSUP",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Not supported"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENOTTY",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Inappropriate I/O control operation"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ENXIO",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No such device or address"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EOF",
    "link": "cpp/io/c",
    "marks": {},
    "description": "integer constant expression of type int and negative value"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EOPNOTSUPP",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Operation not supported on socket"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EOVERFLOW",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Value too large to be stored in data type"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EOWNERDEAD",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Previous owner died"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EPERM",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Operation not permitted"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EPIPE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Broken pipe"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EPROTO",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Protocol error"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EPROTONOSUPPORT",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Protocol not supported"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EPROTOTYPE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Protocol wrong type for socket"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ERANGE",
    "link": "cpp/error/errno_macros",
    "marks": {},
    "description": "Result too large"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EROFS",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Read-only file system"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "errno",
    "link": "cpp/error/errno",
    "marks": {},
    "description": "macro which expands to POSIX-compatible thread-local error number variable"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ESPIPE",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Invalid seek"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ESRCH",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "No such process"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ETIME",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Stream ioctl() timeout"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ETIMEDOUT",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Connection timed out"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ETXTBSY",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Text file busy"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EWOULDBLOCK",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Operation would block"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EXDEV",
    "link": "cpp/error/errno_macros",
    "marks": {
      "since": "c++11"
    },
    "description": "Cross-device link"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EXIT_FAILURE",
    "link": "cpp/utility/program/EXIT_status",
    "marks": {},
    "description": "indicates program execution status"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "EXIT_SUCCESS",
    "link": "cpp/utility/program/EXIT_status",
    "marks": {},
    "description": "indicates program execution status"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_ALL_EXCEPT",
    "link": "cpp/numeric/fenv/FE_exceptions",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_DFL_ENV",
    "link": "cpp/numeric/fenv/FE_DFL_ENV",
    "marks": {
      "since": "c++11"
    },
    "description": "default floating-point environment"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_DIVBYZERO",
    "link": "cpp/numeric/fenv/FE_exceptions",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_DOWNWARD",
    "link": "cpp/numeric/fenv/FE_round",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point rounding direction"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_INEXACT",
    "link": "cpp/numeric/fenv/FE_exceptions",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_INVALID",
    "link": "cpp/numeric/fenv/FE_exceptions",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_OVERFLOW",
    "link": "cpp/numeric/fenv/FE_exceptions",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_TONEAREST",
    "link": "cpp/numeric/fenv/FE_round",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point rounding direction"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_TOWARDZERO",
    "link": "cpp/numeric/fenv/FE_round",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point rounding direction"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_UNDERFLOW",
    "link": "cpp/numeric/fenv/FE_exceptions",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FE_UPWARD",
    "link": "cpp/numeric/fenv/FE_round",
    "marks": {
      "since": "c++11"
    },
    "description": "floating-point rounding direction"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FILENAME_MAX",
    "link": "cpp/io/c",
    "marks": {},
    "description": "size needed for an array of char to hold the longest supported file name"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_DECIMAL_DIG",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "conversion from float/double/long double to decimal with at least FLT_DECIMAL_DIG/DBL_DECIMAL_DIG/LDBL_DECIMAL_DIG digits and back is the identity conversion: this is the decimal precision required to serialize/deserialize a floating-point value (see also std::numeric_limits::max_digits10). Defined to at least 6, 10, and 10 respectively, or 9 for IEEE float and 17 for IEEE double."
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_DIG",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "number of decimal digits that are guaranteed to be preserved in text → float/double/long double → text roundtrip without change due to rounding or overflow (see std::numeric_limits::digits10 for explanation)"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_EPSILON",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "difference between 1.0 and the next representable value for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_EVAL_METHOD",
    "link": "cpp/types/climits/FLT_EVAL_METHOD",
    "marks": {
      "since": "c++11"
    },
    "description": "specifies in what precision all arithmetic operations are done"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_HAS_SUBNORM",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "specifies whether the type supports subnormal (denormal) numbers:\n-1 – indeterminable, ​0​ – absent, 1 – present"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_MANT_DIG",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "number of base FLT_RADIX digits that can be represented without losing precision for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum finite value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_MAX_10_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum positive integer such that 10 raised to that power is a representable finite float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_MAX_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum positive integer such that FLT_RADIX raised by power one less than that integer is a representable finite float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum normalized positive value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_MIN_10_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum negative integer such that 10 raised to that power is a normalized float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_MIN_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum negative integer such that FLT_RADIX raised by power one less than that integer is a normalized float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_RADIX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "the radix (integer base) used by the representation of all three floating-point types"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_ROUNDS",
    "link": "cpp/types/climits/FLT_ROUNDS",
    "marks": {},
    "description": "default rounding mode of floating-point arithmetic"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FLT_TRUE_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "minimum positive value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FOPEN_MAX",
    "link": "cpp/io/c",
    "marks": {},
    "description": "number of files that can be open simultaneously"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_FAST_FMA",
    "link": "cpp/numeric/math/fma",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_FAST_FMAF",
    "link": "cpp/numeric/math/fma",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_FAST_FMAL",
    "link": "cpp/numeric/math/fma",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_ILOGB0",
    "link": "cpp/numeric/math/ilogb",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_ILOGBNAN",
    "link": "cpp/numeric/math/ilogb",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_SUBNORMAL",
    "link": "cpp/numeric/math/FP_categories",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates a floating-point category"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_ZERO",
    "link": "cpp/numeric/math/FP_categories",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates a floating-point category"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_INFINITE",
    "link": "cpp/numeric/math/FP_categories",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates a floating-point category"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_NAN",
    "link": "cpp/numeric/math/FP_categories",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates a floating-point category"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "FP_NORMAL",
    "link": "cpp/numeric/math/FP_categories",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates a floating-point category"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "HUGE_VAL",
    "link": "cpp/numeric/math/HUGE_VAL",
    "marks": {},
    "description": "indicates the overflow value for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "HUGE_VALF",
    "link": "cpp/numeric/math/HUGE_VAL",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates the overflow value for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "HUGE_VALL",
    "link": "cpp/numeric/math/HUGE_VAL",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates the overflow value for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INFINITY",
    "link": "cpp/numeric/math/INFINITY",
    "marks": {
      "since": "c++11"
    },
    "description": "evaluates to positive infinity or the value guaranteed to overflow a float"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST16_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST16_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST32_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST32_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST64_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST64_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST8_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_FAST8_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_fast8_t, std::int_fast16_t, std::int_fast32_t and std::int_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST16_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST16_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST32_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST32_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST64_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST64_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST8_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_LEAST8_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "INT16_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT16_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT16_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "INT32_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT32_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT32_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "INT64_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT64_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT64_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "INT8_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::int_least8_t, std::int_least16_t, std::int_least32_t and std::int_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT8_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INT8_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::int8_t, std::int16_t, std::int32_t and std::int64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "INTMAX_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and the type std::intmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INTMAX_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::intmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INTMAX_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::intmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INTPTR_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::intptr_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "INTPTR_MIN",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::intptr_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "L_tmpnam",
    "link": "cpp/io/c",
    "marks": {},
    "description": "size needed for an array of char to hold the result of std::tmpnam"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LC_ALL",
    "link": "cpp/locale/LC_categories",
    "marks": {},
    "description": "locale categories for std::setlocale"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LC_COLLATE",
    "link": "cpp/locale/LC_categories",
    "marks": {},
    "description": "locale categories for std::setlocale"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LC_CTYPE",
    "link": "cpp/locale/LC_categories",
    "marks": {},
    "description": "locale categories for std::setlocale"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LC_MONETARY",
    "link": "cpp/locale/LC_categories",
    "marks": {},
    "description": "locale categories for std::setlocale"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LC_NUMERIC",
    "link": "cpp/locale/LC_categories",
    "marks": {},
    "description": "locale categories for std::setlocale"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LC_TIME",
    "link": "cpp/locale/LC_categories",
    "marks": {},
    "description": "locale categories for std::setlocale"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_DECIMAL_DIG",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "conversion from float/double/long double to decimal with at least FLT_DECIMAL_DIG/DBL_DECIMAL_DIG/LDBL_DECIMAL_DIG digits and back is the identity conversion: this is the decimal precision required to serialize/deserialize a floating-point value (see also std::numeric_limits::max_digits10). Defined to at least 6, 10, and 10 respectively, or 9 for IEEE float and 17 for IEEE double."
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_DIG",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "number of decimal digits that are guaranteed to be preserved in text → float/double/long double → text roundtrip without change due to rounding or overflow (see std::numeric_limits::digits10 for explanation)"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_EPSILON",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "difference between 1.0 and the next representable value for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_HAS_SUBNORM",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "specifies whether the type supports subnormal (denormal) numbers:\n-1 – indeterminable, ​0​ – absent, 1 – present"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_MANT_DIG",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "number of base FLT_RADIX digits that can be represented without losing precision for float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum finite value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_MAX_10_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum positive integer such that 10 raised to that power is a representable finite float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_MAX_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum positive integer such that FLT_RADIX raised by power one less than that integer is a representable finite float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum normalized positive value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_MIN_10_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum negative integer such that 10 raised to that power is a normalized float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_MIN_EXP",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum negative integer such that FLT_RADIX raised by power one less than that integer is a normalized float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LDBL_TRUE_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++17"
    },
    "description": "minimum positive value of float, double and long double respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LLONG_MAX",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LLONG_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LONG_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "LONG_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "MATH_ERREXCEPT",
    "link": "cpp/numeric/math/math_errhandling",
    "marks": {
      "since": "c++11"
    },
    "description": "defines the error handling mechanism used by the common mathematical functions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "math_errhandling",
    "link": "cpp/numeric/math/math_errhandling",
    "marks": {
      "since": "c++11"
    },
    "description": "defines the error handling mechanism used by the common mathematical functions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "MATH_ERRNO",
    "link": "cpp/numeric/math/math_errhandling",
    "marks": {
      "since": "c++11"
    },
    "description": "defines the error handling mechanism used by the common mathematical functions"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "MB_CUR_MAX",
    "link": "cpp/string/multibyte",
    "marks": {},
    "description": "maximum number of bytes in a multibyte character with the current locale"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "MB_LEN_MAX",
    "link": "cpp/string/multibyte",
    "marks": {},
    "description": "maximum number of bytes in a multibyte character"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "NAN",
    "link": "cpp/numeric/math/NAN",
    "marks": {
      "since": "c++11"
    },
    "description": "evaluates to a quiet NaN of type float"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "NULL",
    "link": "cpp/types/NULL",
    "marks": {},
    "description": "implementation-defined null pointer constant"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "offsetof",
    "link": "cpp/types/offsetof",
    "marks": {},
    "description": "byte offset from the beginning of a standard-layout type to specified member"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ONCE_FLAG_INIT",
    "link": "cpp/thread/call_once",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRId16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRId32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRId64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRId8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIdPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIi16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIi32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIi64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIi8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIiPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIo16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIo32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIo64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIo8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIoPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIu16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIu32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIu64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIu8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIuPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIx16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIX16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIx32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIX32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIx64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIX64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIx8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIX8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIxPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned lowercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PRIXPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to output an unsigned uppercase hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to X for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PTRDIFF_MAX",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::ptrdiff_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "PTRDIFF_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::ptrdiff_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "RAND_MAX",
    "link": "cpp/numeric/random/RAND_MAX",
    "marks": {},
    "description": "maximum possible value generated by std::rand"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCHAR_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCHAR_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNd16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNd32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNd64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNd8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNdPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to d for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNi16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNi32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNi64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNi8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNiPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type std::int8_t, std::int16_t, std::int32_t, std::int64_t, std::int_least8_t, std::int_least16_t, std::int_least32_t, std::int_least64_t, std::int_fast8_t, std::int_fast16_t, std::int_fast32_t, std::int_fast64_t, std::intmax_t, std::intptr_t respectively, equivalent to i for int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNo16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNo32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNo64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNo8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNoPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned octal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to o for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNu16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNu32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNu64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNu8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNuPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned decimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to u for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNx16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNx32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNx64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNx8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxFAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxFAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxFAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxFAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxLEAST16",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxLEAST32",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxLEAST64",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxLEAST8",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxMAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SCNxPTR",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "format conversion specifier to input an unsigned hexadecimal integer value of type std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, std::uint_least8_t, std::uint_least16_t, std::uint_least32_t, std::uint_least64_t, std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t, std::uint_fast64_t, std::uintmax_t, std::uintptr_t respectively, equivalent to x for unsigned int"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SEEK_CUR",
    "link": "cpp/io/c",
    "marks": {},
    "description": "argument to std::fseek indicating seeking from beginning of the file\nargument to std::fseek indicating seeking from the current file position\nargument to std::fseek indicating seeking from end of the file"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SEEK_END",
    "link": "cpp/io/c",
    "marks": {},
    "description": "argument to std::fseek indicating seeking from beginning of the file\nargument to std::fseek indicating seeking from the current file position\nargument to std::fseek indicating seeking from end of the file"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SEEK_SET",
    "link": "cpp/io/c",
    "marks": {},
    "description": "argument to std::fseek indicating seeking from beginning of the file\nargument to std::fseek indicating seeking from the current file position\nargument to std::fseek indicating seeking from end of the file"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "setjmp",
    "link": "cpp/utility/program/setjmp",
    "marks": {},
    "description": "saves the context"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SHRT_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SHRT_MIN",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "minimum value of signed char, short, int, long and long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIG_ATOMIC_MAX",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::sig_atomic_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIG_ATOMIC_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::sig_atomic_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIG_DFL",
    "link": "cpp/utility/program/SIG_strategies",
    "marks": {},
    "description": "defines signal handling strategies"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIG_ERR",
    "link": "cpp/utility/program/SIG_ERR",
    "marks": {},
    "description": "return value of signal specifying that an error was encountered"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIG_IGN",
    "link": "cpp/utility/program/SIG_strategies",
    "marks": {},
    "description": "defines signal handling strategies"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIGABRT",
    "link": "cpp/utility/program/SIG_types",
    "marks": {},
    "description": "defines signal types"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIGFPE",
    "link": "cpp/utility/program/SIG_types",
    "marks": {},
    "description": "defines signal types"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIGILL",
    "link": "cpp/utility/program/SIG_types",
    "marks": {},
    "description": "defines signal types"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIGINT",
    "link": "cpp/utility/program/SIG_types",
    "marks": {},
    "description": "defines signal types"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIGSEGV",
    "link": "cpp/utility/program/SIG_types",
    "marks": {},
    "description": "defines signal types"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIGTERM",
    "link": "cpp/utility/program/SIG_types",
    "marks": {},
    "description": "defines signal types"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "SIZE_MAX",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::size_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "stderr",
    "link": "cpp/io/c/std streams",
    "marks": {},
    "description": "expression of type FILE* associated with the input stream\nexpression of type FILE* associated with the output stream\nexpression of type FILE* associated with the error output stream"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "stdin",
    "link": "cpp/io/c/std streams",
    "marks": {},
    "description": "expression of type FILE* associated with the input stream\nexpression of type FILE* associated with the output stream\nexpression of type FILE* associated with the error output stream"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "stdout",
    "link": "cpp/io/c/std streams",
    "marks": {},
    "description": "expression of type FILE* associated with the input stream\nexpression of type FILE* associated with the output stream\nexpression of type FILE* associated with the error output stream"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "TIME_UTC",
    "link": "cpp/chrono/c/timespec_get",
    "marks": {
      "since": "c++17"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "TMP_MAX",
    "link": "cpp/io/c",
    "marks": {},
    "description": "maximum number of unique filenames that can be generated by std::tmpnam"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UCHAR_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of unsigned char, unsigned short, unsigned int,\nunsigned long and unsigned long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_FAST16_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t and std::uint_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_FAST32_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t and std::uint_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_FAST64_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t and std::uint_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_FAST8_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_fast8_t, std::uint_fast16_t, std::uint_fast32_t and std::uint_fast64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_LEAST16_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_LEAST32_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_LEAST64_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_LEAST8_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of unsigned char, unsigned short, unsigned int,\nunsigned long and unsigned long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "UINT16_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT16_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint8_t, std::uint16_t, std::uint32_t and std::uint64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "UINT32_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT32_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint8_t, std::uint16_t, std::uint32_t and std::uint64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT64_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint8_t, std::uint16_t, std::uint32_t and std::uint64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "UINT64_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "UINT8_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and whose type is the promoted type of std::uint_least8_t, std::uint_least16_t, std::uint_least32_t and std::uint_least64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINT8_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uint8_t, std::uint16_t, std::uint32_t and std::uint64_t respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "UINTMAX_C",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "expands to an integer constant expression having the value specified by its argument and the type std::uintmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINTMAX_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uintmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "UINTPTR_MAX",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::uintptr_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ULLONG_MAX",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of unsigned char, unsigned short, unsigned int,\nunsigned long and unsigned long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "ULONG_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of unsigned char, unsigned short, unsigned int,\nunsigned long and unsigned long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "USHRT_MAX",
    "link": "cpp/types/climits",
    "marks": {},
    "description": "maximum value of unsigned char, unsigned short, unsigned int,\nunsigned long and unsigned long long respectively"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "va_arg",
    "link": "cpp/utility/variadic/va_arg",
    "marks": {},
    "description": "accesses the next variadic function argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "va_copy",
    "link": "cpp/utility/variadic/va_copy",
    "marks": {
      "since": "c++11"
    },
    "description": "makes a copy of the variadic function arguments"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "va_end",
    "link": "cpp/utility/variadic/va_end",
    "marks": {},
    "description": "ends traversal of the variadic function arguments"
  },
  {
    "type": "symbol",
    "symbolType": "functionLikeMacro",
    "name": "va_start",
    "link": "cpp/utility/variadic/va_start",
    "marks": {},
    "description": "enables access to variadic function arguments"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "WCHAR_MAX",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of wchar_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "WCHAR_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of wchar_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "WEOF",
    "link": "cpp/string/wide",
    "marks": {},
    "description": "a non-character value of type std::wint_t used to indicate errors"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "WINT_MAX",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum value of std::wint_t"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "WINT_MIN",
    "link": "cpp/types/climits",
    "marks": {
      "since": "c++11"
    },
    "description": "minimum value of std::wint_t"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::_Exit",
    "link": "cpp/utility/program/_Exit",
    "marks": {
      "since": "c++11"
    },
    "description": "causes normal program termination without cleaning up"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::abs",
    "link": "cpp/numeric/math/abs",
    "marks": {},
    "note": "int",
    "description": "computes absolute value of an integral value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::abs",
    "link": "cpp/numeric/math/fabs",
    "marks": {},
    "note": "float",
    "description": "absolute value of a floating point value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::abs",
    "link": "cpp/numeric/complex/abs",
    "marks": {},
    "note": "std::complex",
    "description": "returns the magnitude of a complex number"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::abs",
    "link": "cpp/numeric/valarray/abs",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function abs to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::acos",
    "link": "cpp/numeric/math/acos",
    "marks": {},
    "description": "computes arc cosine (arccos(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::acos",
    "link": "cpp/numeric/complex/acos",
    "marks": {
      "since": "c++11"
    },
    "note": "std::complex",
    "description": "computes arc cosine of a complex number (arccos(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::acos",
    "link": "cpp/numeric/valarray/acos",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::acos to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::acosf",
    "link": "cpp/numeric/math/acos",
    "marks": {
      "since": "c++11"
    },
    "description": "computes arc cosine (arccos(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::acosh",
    "link": "cpp/numeric/math/acosh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic cosine (arcosh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::acosh",
    "link": "cpp/numeric/complex/acosh",
    "marks": {
      "since": "c++11"
    },
    "note": "std::complex",
    "description": "computes area hyperbolic cosine of a complex number (arcosh(z))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::acoshf",
    "link": "cpp/numeric/math/acosh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic cosine (arcosh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::acoshl",
    "link": "cpp/numeric/math/acosh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic cosine (arcosh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::acosl",
    "link": "cpp/numeric/math/acos",
    "marks": {
      "since": "c++11"
    },
    "description": "computes arc cosine (arccos(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::accumulate",
    "link": "cpp/algorithm/accumulate",
    "marks": {},
    "description": "sums up or folds a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::add_const",
    "link": "cpp/types/add_cv",
    "marks": {
      "since": "c++11"
    },
    "description": "adds const and/or volatile specifiers to the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::add_const_t",
    "link": "cpp/types/add_cv",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::add_const"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::add_cv",
    "link": "cpp/types/add_cv",
    "marks": {
      "since": "c++11"
    },
    "description": "adds const and/or volatile specifiers to the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::add_cv_t",
    "link": "cpp/types/add_cv",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::add_cv"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::add_pointer",
    "link": "cpp/types/add_pointer",
    "marks": {
      "since": "c++11"
    },
    "description": "adds a pointer to the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::add_pointer_t",
    "link": "cpp/types/add_pointer",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::add_pointer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::add_lvalue_reference",
    "link": "cpp/types/add_reference",
    "marks": {
      "since": "c++11"
    },
    "description": "adds an lvalue or rvalue reference to the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::add_lvalue_reference_t",
    "link": "cpp/types/add_reference",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::add_lvalue_reference"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::add_rvalue_reference",
    "link": "cpp/types/add_reference",
    "marks": {
      "since": "c++11"
    },
    "description": "adds an lvalue or rvalue reference to the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::add_rvalue_reference_t",
    "link": "cpp/types/add_reference",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::add_rvalue_reference"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::add_sat",
    "link": "cpp/numeric/add_sat",
    "marks": {
      "since": "c++26"
    },
    "description": "saturating addition operation on two integers"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::add_volatile",
    "link": "cpp/types/add_cv",
    "marks": {
      "since": "c++11"
    },
    "description": "adds const and/or volatile specifiers to the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::add_volatile_t",
    "link": "cpp/types/add_cv",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::add_volatile"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::addressof",
    "link": "cpp/memory/addressof",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains actual address of an object, even if the & operator is overloaded"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::adjacent_difference",
    "link": "cpp/algorithm/adjacent_difference",
    "marks": {},
    "description": "computes the differences between adjacent elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::adjacent_find",
    "link": "cpp/algorithm/adjacent_find",
    "marks": {},
    "description": "finds the first two adjacent items that are equal (or satisfy a given predicate)"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::adopt_lock",
    "link": "cpp/thread/lock_tag",
    "marks": {
      "since": "c++11"
    },
    "description": "tags used to specify locking strategy"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::adopt_lock_t",
    "link": "cpp/thread/lock_tag_t",
    "marks": {
      "since": "c++11"
    },
    "description": "tags used to specify locking strategy"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::advance",
    "link": "cpp/iterator/advance",
    "marks": {},
    "description": "advances an iterator by given distance"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::align",
    "link": "cpp/memory/align",
    "marks": {
      "since": "c++11"
    },
    "description": "aligns a pointer in a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::align_val_t",
    "link": "cpp/memory/new/align_val_t",
    "marks": {
      "since": "c++17"
    },
    "description": "type used to pass alignment to alignment-aware allocation and deallocation functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::aligned_alloc",
    "link": "cpp/memory/c/aligned_alloc",
    "marks": {
      "since": "c++17"
    },
    "description": "allocates aligned memory"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::aligned_storage",
    "link": "cpp/types/aligned_storage",
    "marks": {
      "since": "c++11"
    },
    "description": "defines the type suitable for use as uninitialized storage for types of given size"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::aligned_storage_t",
    "link": "cpp/types/aligned_storage",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::aligned_storage"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::aligned_union",
    "link": "cpp/types/aligned_union",
    "marks": {
      "since": "c++11"
    },
    "description": "defines the type suitable for use as uninitialized storage for all given types"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::aligned_union_t",
    "link": "cpp/types/aligned_union",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::aligned_union"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::alignment_of",
    "link": "cpp/types/alignment_of",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the type's alignment requirements"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::alignment_of_v",
    "link": "cpp/types/alignment_of",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::alignment_of"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::all_of",
    "link": "cpp/algorithm/all_any_none_of",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a predicate is true for all, any or none of the elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::allocate_shared",
    "link": "cpp/memory/shared_ptr/allocate_shared",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a shared pointer that manages a new object allocated using an allocator"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::allocate_shared_for_overwrite",
    "link": "cpp/memory/shared_ptr/allocate_shared",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a shared pointer that manages a new object allocated using an allocator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::allocation_result",
    "link": "cpp/memory/allocation_result",
    "marks": {
      "since": "c++23"
    },
    "description": "records the address and the actual size of storage allocated by allocate_at_least"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::allocator",
    "link": "cpp/memory/allocator",
    "marks": {},
    "description": "the default allocator"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::allocator_arg",
    "link": "cpp/memory/allocator_arg",
    "marks": {
      "since": "c++11"
    },
    "description": "a tag used to select allocator-aware constructors"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::allocator_arg_t",
    "link": "cpp/memory/allocator_arg_t",
    "marks": {
      "since": "c++11"
    },
    "description": "a tag used to select allocator-aware constructors"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::allocator_traits",
    "link": "cpp/memory/allocator_traits",
    "marks": {
      "since": "c++11"
    },
    "description": "provides information about allocator types"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::any",
    "link": "cpp/utility/any",
    "marks": {
      "since": "c++17"
    },
    "description": "objects that hold instances of any CopyConstructible type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::any_cast",
    "link": "cpp/utility/any/any_cast",
    "marks": {
      "since": "c++17"
    },
    "description": "type-safe access to the contained object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::any_of",
    "link": "cpp/algorithm/all_any_none_of",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a predicate is true for all, any or none of the elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::apply",
    "link": "cpp/utility/apply",
    "marks": {
      "since": "c++17"
    },
    "description": "calls a function with a tuple of arguments"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::arg",
    "link": "cpp/numeric/complex/arg",
    "marks": {},
    "description": "returns the phase angle"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::array",
    "link": "cpp/container/array",
    "marks": {
      "since": "c++11"
    },
    "description": "fixed-sized inplace contiguous array"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::as_bytes",
    "link": "cpp/container/span/as_bytes",
    "marks": {
      "since": "c++20"
    },
    "description": "converts a span into a view of its underlying bytes"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::as_const",
    "link": "cpp/utility/as_const",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains a reference to const to its argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::as_writable_bytes",
    "link": "cpp/container/span/as_bytes",
    "marks": {
      "since": "c++20"
    },
    "description": "converts a span into a view of its underlying bytes"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::asctime",
    "link": "cpp/chrono/c/asctime",
    "marks": {},
    "description": "converts a std::tm object to a textual representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::asin",
    "link": "cpp/numeric/math/asin",
    "marks": {},
    "description": "computes arc sine (arcsin(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::asin",
    "link": "cpp/numeric/complex/asin",
    "marks": {
      "since": "c++11"
    },
    "note": "std::complex",
    "description": "computes arc sine of a complex number (arcsin(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::asin",
    "link": "cpp/numeric/valarray/asin",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::asin to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::asinf",
    "link": "cpp/numeric/math/asin",
    "marks": {
      "since": "c++11"
    },
    "description": "computes arc sine (arcsin(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::asinh",
    "link": "cpp/numeric/math/asinh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic sine (arsinh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::asinh",
    "link": "cpp/numeric/complex/asinh",
    "marks": {
      "since": "c++11"
    },
    "note": "std::complex",
    "description": "computes area hyperbolic sine of a complex number (arsinh(z))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::asinhf",
    "link": "cpp/numeric/math/asinh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic sine (arsinh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::asinhl",
    "link": "cpp/numeric/math/asinh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic sine (arsinh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::asinl",
    "link": "cpp/numeric/math/asin",
    "marks": {
      "since": "c++11"
    },
    "description": "computes arc sine (arcsin(x))"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::assignable_from",
    "link": "cpp/concepts/assignable_from",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is assignable from another type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::assoc_laguerre",
    "link": "cpp/numeric/special_functions/assoc_laguerre",
    "marks": {
      "since": "c++17"
    },
    "description": "associated Laguerre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::assoc_laguerref",
    "link": "cpp/numeric/special_functions/assoc_laguerre",
    "marks": {
      "since": "c++17"
    },
    "description": "associated Laguerre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::assoc_laguerrel",
    "link": "cpp/numeric/special_functions/assoc_laguerre",
    "marks": {
      "since": "c++17"
    },
    "description": "associated Laguerre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::assoc_legendre",
    "link": "cpp/numeric/special_functions/assoc_legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "associated Legendre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::assoc_legendref",
    "link": "cpp/numeric/special_functions/assoc_legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "associated Legendre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::assoc_legendrel",
    "link": "cpp/numeric/special_functions/assoc_legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "associated Legendre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::assume_aligned",
    "link": "cpp/memory/assume_aligned",
    "marks": {
      "since": "c++20"
    },
    "description": "informs the compiler that a pointer is aligned"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::async",
    "link": "cpp/thread/async",
    "marks": {
      "since": "c++11"
    },
    "description": "runs a function asynchronously (potentially in a new thread) and returns a std::future that will hold the result"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::at_quick_exit",
    "link": "cpp/utility/program/at_quick_exit",
    "marks": {
      "since": "c++11"
    },
    "description": "registers a function to be called on std::quick_exit invocation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atan",
    "link": "cpp/numeric/math/atan",
    "marks": {},
    "description": "computes arc tangent (arctan(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atan",
    "link": "cpp/numeric/complex/atan",
    "marks": {
      "since": "c++11"
    },
    "note": "std::complex",
    "description": "computes arc tangent of a complex number (arctan(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atan",
    "link": "cpp/numeric/valarray/atan",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::atan to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atan2",
    "link": "cpp/numeric/math/atan2",
    "marks": {},
    "description": "arc tangent, using signs to determine quadrants"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atan2",
    "link": "cpp/numeric/valarray/atan2",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::atan2 to a valarray and a value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atan2f",
    "link": "cpp/numeric/math/atan2",
    "marks": {
      "since": "c++11"
    },
    "description": "arc tangent, using signs to determine quadrants"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atan2l",
    "link": "cpp/numeric/math/atan2",
    "marks": {
      "since": "c++11"
    },
    "description": "arc tangent, using signs to determine quadrants"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atanf",
    "link": "cpp/numeric/math/atan",
    "marks": {
      "since": "c++11"
    },
    "description": "computes arc tangent (arctan(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atanh",
    "link": "cpp/numeric/math/atanh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic tangent (artanh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atanh",
    "link": "cpp/numeric/complex/atanh",
    "marks": {
      "since": "c++11"
    },
    "note": "std::complex",
    "description": "computes area hyperbolic tangent of a complex number (artanh(z))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atanhf",
    "link": "cpp/numeric/math/atanh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic tangent (artanh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atanhl",
    "link": "cpp/numeric/math/atanh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes the inverse hyperbolic tangent (artanh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atanl",
    "link": "cpp/numeric/math/atan",
    "marks": {
      "since": "c++11"
    },
    "description": "computes arc tangent (arctan(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atexit",
    "link": "cpp/utility/program/atexit",
    "marks": {},
    "description": "registers a function to be called on std::exit() invocation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atof",
    "link": "cpp/string/byte/atof",
    "marks": {},
    "description": "converts a byte string to a floating point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atoi",
    "link": "cpp/string/byte/atoi",
    "marks": {},
    "description": "converts a byte string to an integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atol",
    "link": "cpp/string/byte/atoi",
    "marks": {},
    "description": "converts a byte string to an integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atoll",
    "link": "cpp/string/byte/atoi",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a byte string to an integer value"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::atomic",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "atomic class template and specializations for bool, integral, floating-point,(since C++20) and pointer types"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_bool",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<bool>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_char",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<char>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_char16_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<char16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_char32_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<char32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_char8_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++20"
    },
    "description": "std::atomic<char8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<int>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int8_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int16_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int32_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int64_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int64_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_fast8_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_fast8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_fast16_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_fast16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_fast32_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_fast32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_fast64_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_fast64_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_least8_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_least8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_least16_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_least16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_least32_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_least32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_int_least64_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::int_least64_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_intmax_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::intmax_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_intptr_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::intptr_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_llong",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<long long>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_long",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<long>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_ptrdiff_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::ptrdiff_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_schar",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<signed char>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_short",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<short>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_signed_lock_free",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++20"
    },
    "description": "a signed integral atomic type that is lock-free and for which waiting/notifying is most efficient"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_size_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::size_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uchar",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<unsigned char>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<unsigned int>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint8_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint16_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint32_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint64_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint64_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_fast8_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_fast8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_fast16_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_fast16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_fast32_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_fast32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_fast64_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_fast64_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_least8_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_least8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_least16_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_least16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_least32_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_least32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uint_least64_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uint_least64_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uintmax_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uintmax_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_uintptr_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<std::uintptr_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_ullong",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<unsigned long long>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_ulong",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<unsigned long>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_unsigned_lock_free",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++20"
    },
    "description": "an unsigned integral atomic type that is lock-free and for which waiting/notifying is most efficient"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_ushort",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<unsigned short>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atomic_wchar_t",
    "link": "cpp/atomic/atomic",
    "marks": {
      "since": "c++11"
    },
    "description": "std::atomic<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_strong",
    "link": "cpp/atomic/atomic_compare_exchange",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically compares the value of the atomic object with non-atomic argument and performs atomic exchange if equal or atomic load if not"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_strong",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_strong_explicit",
    "link": "cpp/atomic/atomic_compare_exchange",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically compares the value of the atomic object with non-atomic argument and performs atomic exchange if equal or atomic load if not"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_strong_explicit",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_weak",
    "link": "cpp/atomic/atomic_compare_exchange",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically compares the value of the atomic object with non-atomic argument and performs atomic exchange if equal or atomic load if not"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_weak",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_weak_explicit",
    "link": "cpp/atomic/atomic_compare_exchange",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically compares the value of the atomic object with non-atomic argument and performs atomic exchange if equal or atomic load if not"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_compare_exchange_weak_explicit",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_exchange",
    "link": "cpp/atomic/atomic_exchange",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically replaces the value of the atomic object with non-atomic argument and returns the old value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_exchange",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_exchange_explicit",
    "link": "cpp/atomic/atomic_exchange",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically replaces the value of the atomic object with non-atomic argument and returns the old value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_exchange_explicit",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_add",
    "link": "cpp/atomic/atomic_fetch_add",
    "marks": {
      "since": "c++11"
    },
    "description": "adds a non-atomic value to an atomic object and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_add_explicit",
    "link": "cpp/atomic/atomic_fetch_add",
    "marks": {
      "since": "c++11"
    },
    "description": "adds a non-atomic value to an atomic object and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_and",
    "link": "cpp/atomic/atomic_fetch_and",
    "marks": {
      "since": "c++11"
    },
    "description": "replaces the atomic object with the result of bitwise AND with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_and_explicit",
    "link": "cpp/atomic/atomic_fetch_and",
    "marks": {
      "since": "c++11"
    },
    "description": "replaces the atomic object with the result of bitwise AND with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_max",
    "link": "cpp/atomic/atomic_fetch_max",
    "marks": {
      "since": "c++26"
    },
    "description": "replaces the atomic object with the result of std::max with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_max_explicit",
    "link": "cpp/atomic/atomic_fetch_max",
    "marks": {
      "since": "c++26"
    },
    "description": "replaces the atomic object with the result of std::max with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_min",
    "link": "cpp/atomic/atomic_fetch_min",
    "marks": {
      "since": "c++26"
    },
    "description": "replaces the atomic object with the result of std::min with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_min_explicit",
    "link": "cpp/atomic/atomic_fetch_min",
    "marks": {
      "since": "c++26"
    },
    "description": "replaces the atomic object with the result of std::min with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_or",
    "link": "cpp/atomic/atomic_fetch_or",
    "marks": {
      "since": "c++11"
    },
    "description": "replaces the atomic object with the result of bitwise OR with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_or_explicit",
    "link": "cpp/atomic/atomic_fetch_or",
    "marks": {
      "since": "c++11"
    },
    "description": "replaces the atomic object with the result of bitwise OR with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_sub",
    "link": "cpp/atomic/atomic_fetch_sub",
    "marks": {
      "since": "c++11"
    },
    "description": "subtracts a non-atomic value from an atomic object and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_sub_explicit",
    "link": "cpp/atomic/atomic_fetch_sub",
    "marks": {
      "since": "c++11"
    },
    "description": "subtracts a non-atomic value from an atomic object and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_xor",
    "link": "cpp/atomic/atomic_fetch_xor",
    "marks": {
      "since": "c++11"
    },
    "description": "replaces the atomic object with the result of bitwise XOR with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_fetch_xor_explicit",
    "link": "cpp/atomic/atomic_fetch_xor",
    "marks": {
      "since": "c++11"
    },
    "description": "replaces the atomic object with the result of bitwise XOR with a non-atomic argument and obtains the previous value of the atomic"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::atomic_flag",
    "link": "cpp/atomic/atomic_flag",
    "marks": {
      "since": "c++11"
    },
    "description": "the lock-free boolean atomic type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_clear",
    "link": "cpp/atomic/atomic_flag_clear",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically sets the value of the flag to false"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_clear_explicit",
    "link": "cpp/atomic/atomic_flag_clear",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically sets the value of the flag to false"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_notify_all",
    "link": "cpp/atomic/atomic_flag_notify_all",
    "marks": {
      "since": "c++20"
    },
    "description": "notifies all threads blocked in atomic_flag_wait"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_notify_one",
    "link": "cpp/atomic/atomic_flag_notify_one",
    "marks": {
      "since": "c++20"
    },
    "description": "notifies a thread blocked in atomic_flag_wait"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_test",
    "link": "cpp/atomic/atomic_flag_test",
    "marks": {
      "since": "c++20"
    },
    "description": "atomically returns the value of the flag"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_test_explicit",
    "link": "cpp/atomic/atomic_flag_test",
    "marks": {
      "since": "c++20"
    },
    "description": "atomically returns the value of the flag"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_test_and_set",
    "link": "cpp/atomic/atomic_flag_test_and_set",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically sets the flag to true and returns its previous value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_test_and_set_explicit",
    "link": "cpp/atomic/atomic_flag_test_and_set",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically sets the flag to true and returns its previous value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_wait",
    "link": "cpp/atomic/atomic_flag_wait",
    "marks": {
      "since": "c++20"
    },
    "description": "blocks the thread until notified and the flag changes"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_flag_wait_explicit",
    "link": "cpp/atomic/atomic_flag_wait",
    "marks": {
      "since": "c++20"
    },
    "description": "blocks the thread until notified and the flag changes"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_init",
    "link": "cpp/atomic/atomic_init",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "description": "non-atomic initialization of a default-constructed atomic object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_is_lock_free",
    "link": "cpp/atomic/atomic_is_lock_free",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the atomic type's operations are lock-free"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_is_lock_free",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_load",
    "link": "cpp/atomic/atomic_load",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically obtains the value stored in an atomic object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_load",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_load_explicit",
    "link": "cpp/atomic/atomic_load",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically obtains the value stored in an atomic object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_load_explicit",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_notify_all",
    "link": "cpp/atomic/atomic_notify_all",
    "marks": {
      "since": "c++20"
    },
    "description": "notifies all threads blocked in atomic_wait"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_notify_one",
    "link": "cpp/atomic/atomic_notify_one",
    "marks": {
      "since": "c++20"
    },
    "description": "notifies a thread blocked in atomic_wait"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::atomic_ref",
    "link": "cpp/atomic/atomic_ref",
    "marks": {
      "since": "c++20"
    },
    "description": "provides atomic operations on non-atomic objects"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_signal_fence",
    "link": "cpp/atomic/atomic_signal_fence",
    "marks": {
      "since": "c++11"
    },
    "description": "fence between a thread and a signal handler executed in the same thread"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_store",
    "link": "cpp/atomic/atomic_store",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically replaces the value of the atomic object with a non-atomic argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_store",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_store_explicit",
    "link": "cpp/atomic/atomic_store",
    "marks": {
      "since": "c++11"
    },
    "description": "atomically replaces the value of the atomic object with a non-atomic argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_store_explicit",
    "link": "cpp/memory/shared_ptr/atomic",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "note": "std::shared_ptr",
    "description": "specializes atomic operations for std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::atomic_thread_fence",
    "link": "cpp/atomic/atomic_thread_fence",
    "marks": {
      "since": "c++11"
    },
    "description": "generic memory order-dependent fence synchronization primitive"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_wait",
    "link": "cpp/atomic/atomic_wait",
    "marks": {
      "since": "c++20"
    },
    "description": "blocks the thread until notified and the atomic value changes"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::atomic_wait_explicit",
    "link": "cpp/atomic/atomic_wait",
    "marks": {
      "since": "c++20"
    },
    "description": "blocks the thread until notified and the atomic value changes"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::atto",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000000000000000000>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::back_insert_iterator",
    "link": "cpp/iterator/back_insert_iterator",
    "marks": {},
    "description": "iterator adaptor for insertion at the end of a container"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::back_inserter",
    "link": "cpp/iterator/back_inserter",
    "marks": {},
    "description": "creates a std::back_insert_iterator of type inferred from the argument"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_alloc",
    "link": "cpp/memory/new/bad_alloc",
    "marks": {},
    "description": "exception thrown when memory allocation fails"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_any_cast",
    "link": "cpp/utility/any/bad_any_cast",
    "marks": {
      "since": "c++17"
    },
    "description": "exception thrown by the value-returning forms of any_cast on a type mismatch"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_array_new_length",
    "link": "cpp/memory/new/bad_array_new_length",
    "marks": {
      "since": "c++11"
    },
    "description": "exception thrown on allocation of array with invalid length"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_cast",
    "link": "cpp/types/bad_cast",
    "marks": {},
    "description": "exception that is thrown by an invalid dynamic_cast expression, i.e. a cast of reference type fails"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_exception",
    "link": "cpp/error/bad_exception",
    "marks": {},
    "description": "exception thrown when std::current_exception fails to copy the exception object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::bad_expected_access",
    "link": "cpp/utility/expected/bad_expected_access",
    "marks": {
      "since": "c++23"
    },
    "description": "exception indicating checked access to an expected that contains an unexpected value"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_function_call",
    "link": "cpp/utility/functional/bad_function_call",
    "marks": {
      "since": "c++11"
    },
    "description": "the exception thrown when invoking an empty std::function"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_optional_access",
    "link": "cpp/utility/optional/bad_optional_access",
    "marks": {
      "since": "c++17"
    },
    "description": "exception indicating checked access to an optional that doesn't contain a value"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_typeid",
    "link": "cpp/types/bad_typeid",
    "marks": {},
    "description": "exception that is thrown if an argument in a typeid expression is null"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_variant_access",
    "link": "cpp/utility/variant/bad_variant_access",
    "marks": {
      "since": "c++17"
    },
    "description": "exception thrown on invalid accesses to the value of a variant"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bad_weak_ptr",
    "link": "cpp/memory/bad_weak_ptr",
    "marks": {
      "since": "c++11"
    },
    "description": "exception thrown when accessing a weak_ptr which refers to already destroyed object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::barrier",
    "link": "cpp/thread/barrier",
    "marks": {
      "since": "c++20"
    },
    "description": "reusable thread barrier"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_common_reference",
    "link": "cpp/types/common_reference",
    "marks": {
      "since": "c++20"
    },
    "description": "determines the common reference type of a group of types"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_const_iterator",
    "link": "cpp/iterator/basic_const_iterator",
    "marks": {
      "since": "c++23"
    },
    "description": "iterator adaptor that converts an iterator into a constant iterator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_filebuf",
    "link": "cpp/io/basic_filebuf",
    "marks": {},
    "description": "implements raw file device"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_format_arg",
    "link": "cpp/utility/format/basic_format_arg",
    "marks": {
      "since": "c++20"
    },
    "description": "class template that provides access to a formatting argument for user-defined formatters"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_format_args",
    "link": "cpp/utility/format/basic_format_args",
    "marks": {
      "since": "c++20"
    },
    "description": "class that provides access to all formatting arguments"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_format_context",
    "link": "cpp/utility/format/basic_format_context",
    "marks": {
      "since": "c++20"
    },
    "description": "formatting state, including all formatting arguments and the output iterator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_format_parse_context",
    "link": "cpp/utility/format/basic_format_parse_context",
    "marks": {
      "since": "c++20"
    },
    "description": "formatting string parser state"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_format_string",
    "link": "cpp/utility/format/basic_format_string",
    "marks": {
      "since": "c++20"
    },
    "description": "class template that performs compile-time format string checks at construction time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_fstream",
    "link": "cpp/io/basic_fstream",
    "marks": {},
    "description": "implements high-level file stream input/output operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_ifstream",
    "link": "cpp/io/basic_ifstream",
    "marks": {},
    "description": "implements high-level file stream input operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_istream",
    "link": "cpp/io/basic_istream",
    "marks": {},
    "description": "wraps a given abstract device (std::basic_streambuf)\nand provides high-level input interface"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_ios",
    "link": "cpp/io/basic_ios",
    "marks": {},
    "description": "manages an arbitrary stream buffer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_iostream",
    "link": "cpp/io/basic_iostream",
    "marks": {},
    "description": "wraps a given abstract device (std::basic_streambuf)\nand provides high-level input/output interface"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_ispanstream",
    "link": "cpp/io/basic_ispanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "implements fixed character buffer input operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_istringstream",
    "link": "cpp/io/basic_istringstream",
    "marks": {},
    "description": "implements high-level string stream input operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_ofstream",
    "link": "cpp/io/basic_ofstream",
    "marks": {},
    "description": "implements high-level file stream output operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_ostream",
    "link": "cpp/io/basic_ostream",
    "marks": {},
    "description": "wraps a given abstract device (std::basic_streambuf)\nand provides high-level output interface"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_ospanstream",
    "link": "cpp/io/basic_ospanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "implements fixed character buffer output operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_ostringstream",
    "link": "cpp/io/basic_ostringstream",
    "marks": {},
    "description": "implements high-level string stream output operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_osyncstream",
    "link": "cpp/io/basic_osyncstream",
    "marks": {
      "since": "c++20"
    },
    "description": "synchronized output stream wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_regex",
    "link": "cpp/regex/basic_regex",
    "marks": {
      "since": "c++11"
    },
    "description": "regular expression object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_spanbuf",
    "link": "cpp/io/basic_spanbuf",
    "marks": {
      "since": "c++23"
    },
    "description": "implements raw fixed character buffer device"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_spanstream",
    "link": "cpp/io/basic_spanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "implements fixed character buffer input/output operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_stacktrace",
    "link": "cpp/utility/basic_stacktrace",
    "marks": {
      "since": "c++23"
    },
    "description": "approximate representation of an invocation sequence consists of stacktrace entries"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_streambuf",
    "link": "cpp/io/basic_streambuf",
    "marks": {},
    "description": "abstracts a raw device"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_string",
    "link": "cpp/string/basic_string",
    "marks": {},
    "description": "stores and manipulates sequences of characters"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_string_view",
    "link": "cpp/string/basic_string_view",
    "marks": {
      "since": "c++17"
    },
    "description": "read-only string view"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_stringbuf",
    "link": "cpp/io/basic_stringbuf",
    "marks": {},
    "description": "implements raw string device"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_stringstream",
    "link": "cpp/io/basic_stringstream",
    "marks": {},
    "description": "implements high-level string stream input/output operations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::basic_syncbuf",
    "link": "cpp/io/basic_syncbuf",
    "marks": {
      "since": "c++20"
    },
    "description": "synchronized output device wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::begin",
    "link": "cpp/iterator/begin",
    "marks": {
      "since": "c++11"
    },
    "description": "returns an iterator to the beginning of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bernoulli_distribution",
    "link": "cpp/numeric/random/bernoulli_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces bool values on a Bernoulli distribution"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::beta",
    "link": "cpp/numeric/special_functions/beta",
    "marks": {
      "since": "c++17"
    },
    "description": "beta function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::betaf",
    "link": "cpp/numeric/special_functions/beta",
    "marks": {
      "since": "c++17"
    },
    "description": "beta function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::betal",
    "link": "cpp/numeric/special_functions/beta",
    "marks": {
      "since": "c++17"
    },
    "description": "beta function"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::bfloat16_t",
    "link": "cpp/types/floating-point",
    "marks": {
      "since": "c++23"
    },
    "description": "brain floating-point type with 16 bits exactly"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::bidirectional_iterator",
    "link": "cpp/iterator/bidirectional_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a forward_iterator is a bidirectional iterator, supporting movement backwards"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::bidirectional_iterator_tag",
    "link": "cpp/iterator/iterator_tags",
    "marks": {},
    "description": "empty class types used to indicate iterator categories"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::binary_search",
    "link": "cpp/algorithm/binary_search",
    "marks": {},
    "description": "determines if an element exists in a partially-ordered range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::binary_semaphore",
    "link": "cpp/thread/counting_semaphore",
    "marks": {
      "since": "c++20"
    },
    "description": "semaphore that has only two states"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bind",
    "link": "cpp/utility/functional/bind",
    "marks": {
      "since": "c++11"
    },
    "description": "binds one or more arguments to a function object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bind_back",
    "link": "cpp/utility/functional/bind_front",
    "marks": {
      "since": "c++23"
    },
    "description": "bind a variable number of arguments, in order, to a function object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bind_front",
    "link": "cpp/utility/functional/bind_front",
    "marks": {
      "since": "c++20"
    },
    "description": "bind a variable number of arguments, in order, to a function object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::binomial_distribution",
    "link": "cpp/numeric/random/binomial_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces integer values on a binomial distribution"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::bit_and",
    "link": "cpp/utility/functional/bit_and",
    "marks": {},
    "description": "function object implementing x & y"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bit_cast",
    "link": "cpp/numeric/bit_cast",
    "marks": {
      "since": "c++20"
    },
    "description": "reinterpret the object representation of one type as that of another"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bit_ceil",
    "link": "cpp/numeric/bit_ceil",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the smallest integral power of two not less than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bit_floor",
    "link": "cpp/numeric/bit_floor",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the largest integral power of two not greater than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::bit_not",
    "link": "cpp/utility/functional/bit_not",
    "marks": {
      "since": "c++14"
    },
    "description": "function object implementing ~x"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::bit_or",
    "link": "cpp/utility/functional/bit_or",
    "marks": {},
    "description": "function object implementing x | y"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bit_width",
    "link": "cpp/numeric/bit_width",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the smallest number of bits needed to represent the given value"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::bit_xor",
    "link": "cpp/utility/functional/bit_xor",
    "marks": {},
    "description": "function object implementing x ^ y"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::bitset",
    "link": "cpp/utility/bitset",
    "marks": {},
    "description": "implements constant length bit array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::breakpoint",
    "link": "cpp/utility/breakpoint",
    "marks": {
      "since": "c++26"
    },
    "description": "pauses the running program when called"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::breakpoint_if_debugging",
    "link": "cpp/utility/breakpoint_if_debugging",
    "marks": {
      "since": "c++26"
    },
    "description": "calls std::breakpoint if std::is_debugger_present returns true"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::bool_constant",
    "link": "cpp/types/integral_constant",
    "marks": {
      "since": "c++17"
    },
    "description": "compile-time constant of specified type with specified value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::boolalpha",
    "link": "cpp/io/manip/boolalpha",
    "marks": {},
    "description": "switches between textual and numeric representation of booleans"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::boyer_moore_horspool_searcher",
    "link": "cpp/utility/functional/boyer_moore_horspool_searcher",
    "marks": {
      "since": "c++17"
    },
    "description": "Boyer-Moore-Horspool search algorithm implementation"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::boyer_moore_searcher",
    "link": "cpp/utility/functional/boyer_moore_searcher",
    "marks": {
      "since": "c++17"
    },
    "description": "Boyer-Moore search algorithm implementation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::bsearch",
    "link": "cpp/algorithm/bsearch",
    "marks": {},
    "description": "searches an array for an element of unspecified type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::btowc",
    "link": "cpp/string/multibyte/btowc",
    "marks": {},
    "description": "widens a single-byte narrow character to wide character, if possible"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::byte",
    "link": "cpp/types/byte",
    "marks": {
      "since": "c++17"
    },
    "description": "the byte type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::byteswap",
    "link": "cpp/numeric/byteswap",
    "marks": {
      "since": "c++23"
    },
    "description": "reverses the bytes in the given integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::c16rtomb",
    "link": "cpp/string/multibyte/c16rtomb",
    "marks": {
      "since": "c++11"
    },
    "description": "convert a 16-bit wide character to narrow multibyte string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::c32rtomb",
    "link": "cpp/string/multibyte/c32rtomb",
    "marks": {
      "since": "c++11"
    },
    "description": "convert a 32-bit wide character to narrow multibyte string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::c8rtomb",
    "link": "cpp/string/multibyte/c8rtomb",
    "marks": {
      "since": "c++20"
    },
    "description": "converts UTF-8 string to narrow multibyte encoding"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::call_once",
    "link": "cpp/thread/call_once",
    "marks": {
      "since": "c++11"
    },
    "description": "invokes a function only once even if called from multiple threads"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::calloc",
    "link": "cpp/memory/c/calloc",
    "marks": {},
    "description": "allocates and zeroes memory"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::cauchy_distribution",
    "link": "cpp/numeric/random/cauchy_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a Cauchy distribution"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cbegin",
    "link": "cpp/iterator/begin",
    "marks": {
      "since": "c++14"
    },
    "description": "returns an iterator to the beginning of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cbrt",
    "link": "cpp/numeric/math/cbrt",
    "marks": {
      "since": "c++11"
    },
    "description": "computes cube root (3√x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cbrtf",
    "link": "cpp/numeric/math/cbrt",
    "marks": {
      "since": "c++11"
    },
    "description": "computes cube root (3√x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cbrtl",
    "link": "cpp/numeric/math/cbrt",
    "marks": {
      "since": "c++11"
    },
    "description": "computes cube root (3√x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ceil",
    "link": "cpp/numeric/math/ceil",
    "marks": {},
    "description": "nearest integer not less than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ceilf",
    "link": "cpp/numeric/math/ceil",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer not less than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ceill",
    "link": "cpp/numeric/math/ceil",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer not less than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cend",
    "link": "cpp/iterator/end",
    "marks": {
      "since": "c++14"
    },
    "description": "returns an iterator to the end of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::centi",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 100>"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::cerr",
    "link": "cpp/io/cerr",
    "marks": {},
    "description": "writes to the standard C error stream stderr, unbuffered"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::char_traits",
    "link": "cpp/string/char_traits",
    "marks": {},
    "description": "Class Template which describes properties of a character type"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::chars_format",
    "link": "cpp/utility/chars_format",
    "marks": {
      "since": "c++17"
    },
    "description": "specifies formatting for std::to_chars and std::from_chars"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chi_squared_distribution",
    "link": "cpp/numeric/random/chi_squared_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a chi-squared distribution"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::chrono",
    "link": "cpp/symbol_index/chrono",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::abs",
    "link": "cpp/chrono/duration/abs",
    "marks": {
      "since": "c++17"
    },
    "note": "std::chrono::duration",
    "description": "obtains the absolute value of the duration"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::ambiguous_local_time",
    "link": "cpp/chrono/ambiguous_local_time",
    "marks": {
      "since": "c++20"
    },
    "description": "exception thrown to report that a local time is ambiguous"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::April",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::August",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::ceil",
    "link": "cpp/chrono/duration/ceil",
    "marks": {
      "since": "c++17"
    },
    "note": "std::chrono::duration",
    "description": "converts a duration to another, rounding up"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::ceil",
    "link": "cpp/chrono/time_point/ceil",
    "marks": {
      "since": "c++17"
    },
    "note": "std::chrono::time_point",
    "description": "converts a time_point to another, rounding up"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::chrono::choose",
    "link": "cpp/chrono/choose",
    "marks": {
      "since": "c++20"
    },
    "description": "selects how an ambiguous local time should be resolved"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::clock_cast",
    "link": "cpp/chrono/clock_cast",
    "marks": {
      "since": "c++20"
    },
    "description": "convert time points of one clock to another"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::clock_time_conversion",
    "link": "cpp/chrono/clock_time_conversion",
    "marks": {
      "since": "c++20"
    },
    "description": "traits class defining how to convert time points of one clock to another"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::current_zone",
    "link": "cpp/chrono/current_zone",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::day",
    "link": "cpp/chrono/day",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a day of a month"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::December",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::duration",
    "link": "cpp/chrono/duration",
    "marks": {
      "since": "c++11"
    },
    "description": "a time interval"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::duration_cast",
    "link": "cpp/chrono/duration/duration_cast",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a duration to another, with a different tick interval"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::duration_values",
    "link": "cpp/chrono/duration_values",
    "marks": {
      "since": "c++11"
    },
    "description": "constructs zero, min, and max values of a tick count of given type"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::February",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::file_clock",
    "link": "cpp/chrono/file_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "Clock used for file time"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::file_seconds",
    "link": "cpp/chrono/file_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::file_time<std::chrono::seconds>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::chrono::file_time",
    "link": "cpp/chrono/file_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::time_point<std::chrono::file_clock, _>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::floor",
    "link": "cpp/chrono/duration/floor",
    "marks": {
      "since": "c++17"
    },
    "note": "std::chrono::duration",
    "description": "converts a duration to another, rounding down"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::floor",
    "link": "cpp/chrono/time_point/floor",
    "marks": {
      "since": "c++17"
    },
    "note": "std::chrono::time_point",
    "description": "converts a time_point to another, rounding down"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::Friday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/day/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::day",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/file_clock/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::file_time",
    "description": "parses a file_time from a stream according to the provided format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/gps_clock/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::gps_time",
    "description": "parses a gps_time from a stream according to the provided format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/local_t/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::local_time",
    "description": "parses a local_time from a stream according to the provided format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/month/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::month",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/month_day/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::month_day",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/system_clock/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::sys_time",
    "description": "parses a sys_time from a stream according to the provided format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/tai_clock/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::tai_time",
    "description": "parses a tai_time from a stream according to the provided format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/utc_clock/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::utc_time",
    "description": "parses a utc_time from a stream according to the provided format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/weekday/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::weekday",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/year/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::year",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/year_month/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::year_month",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::from_stream",
    "link": "cpp/chrono/year_month_day/from_stream",
    "marks": {
      "since": "c++20"
    },
    "note": "std::chrono::year_month_day",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::get_leap_second_info",
    "link": "cpp/chrono/utc_clock/get_leap_second_info",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains leap second insertion information from a utc_time object"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::get_tzdb",
    "link": "cpp/chrono/tzdb_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "accesses and controls the global time zone database information"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::get_tzdb_list",
    "link": "cpp/chrono/tzdb_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "accesses and controls the global time zone database information"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::gps_clock",
    "link": "cpp/chrono/gps_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "Clock for GPS time"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::gps_seconds",
    "link": "cpp/chrono/gps_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::gps_time<std::chrono::seconds>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::chrono::gps_time",
    "link": "cpp/chrono/gps_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::time_point<std::chrono::gps_clock, _>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::hh_mm_ss",
    "link": "cpp/chrono/hh_mm_ss",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a time of day"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::high_resolution_clock",
    "link": "cpp/chrono/high_resolution_clock",
    "marks": {
      "since": "c++11"
    },
    "description": "the clock with the shortest tick period available"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::hours",
    "link": "cpp/chrono/duration",
    "marks": {
      "since": "c++11"
    },
    "description": "duration type with Period std::ratio<3600>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::is_am",
    "link": "cpp/chrono/hour_fun",
    "marks": {
      "since": "c++20"
    },
    "description": "translates between a 12h/24h format time of day"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::is_clock",
    "link": "cpp/chrono/is_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "determines if a type is a Clock"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::chrono::is_clock_v",
    "link": "cpp/chrono/is_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "determines if a type is a Clock"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::is_pm",
    "link": "cpp/chrono/hour_fun",
    "marks": {
      "since": "c++20"
    },
    "description": "translates between a 12h/24h format time of day"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::January",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::July",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::June",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::last_spec",
    "link": "cpp/chrono/last_spec",
    "marks": {
      "since": "c++20"
    },
    "description": "tag class indicating the last day or weekday in a month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::leap_second",
    "link": "cpp/chrono/leap_second",
    "marks": {
      "since": "c++20"
    },
    "description": "contains information about a leap second insertion"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::leap_second_info",
    "link": "cpp/chrono/utc_clock/leap_second_info",
    "marks": {
      "since": "c++20"
    },
    "description": "leap second insertion information"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::local_info",
    "link": "cpp/chrono/local_info",
    "marks": {
      "since": "c++20"
    },
    "description": "represents information about a local time to UNIX time conversion"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::local_seconds",
    "link": "cpp/chrono/local_t",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::local_time<std::chrono::seconds>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::local_t",
    "link": "cpp/chrono/local_t",
    "marks": {
      "since": "c++20"
    },
    "description": "pseudo-clock representing local time"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::chrono::local_time",
    "link": "cpp/chrono/local_t",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::time_point<std::chrono::local_clock, _>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::local_time_format",
    "link": "cpp/chrono/local_t/formatter",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::locate_zone",
    "link": "cpp/chrono/locate_zone",
    "marks": {
      "since": "c++20"
    },
    "description": "locates a time_zone based on its name"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::make12",
    "link": "cpp/chrono/hour_fun",
    "marks": {
      "since": "c++20"
    },
    "description": "translates between a 12h/24h format time of day"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::make24",
    "link": "cpp/chrono/hour_fun",
    "marks": {
      "since": "c++20"
    },
    "description": "translates between a 12h/24h format time of day"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::March",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::May",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::microseconds",
    "link": "cpp/chrono/duration",
    "marks": {
      "since": "c++11"
    },
    "description": "duration type with Period std::micro"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::milliseconds",
    "link": "cpp/chrono/duration",
    "marks": {
      "since": "c++11"
    },
    "description": "duration type with Period std::milli"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::minutes",
    "link": "cpp/chrono/duration",
    "marks": {
      "since": "c++11"
    },
    "description": "duration type with Period std::ratio<60>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::Monday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::month",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a month of a year"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::month_day",
    "link": "cpp/chrono/month_day",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a specific day of a specific month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::month_day_last",
    "link": "cpp/chrono/month_day_last",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the last day of a specific month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::month_weekday",
    "link": "cpp/chrono/month_weekday",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the nth weekday of a specific month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::month_weekday_last",
    "link": "cpp/chrono/month_weekday_last",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the last weekday of a specific month"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::nanoseconds",
    "link": "cpp/chrono/duration",
    "marks": {
      "since": "c++11"
    },
    "description": "duration type with Period std::nano"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::nonexistent_local_time",
    "link": "cpp/chrono/nonexistent_local_time",
    "marks": {
      "since": "c++20"
    },
    "description": "exception thrown to report that a local time is nonexistent"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::November",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::October",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::parse",
    "link": "cpp/chrono/parse",
    "marks": {
      "since": "c++20"
    },
    "description": "parses a chrono object from a stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::reload_tzdb",
    "link": "cpp/chrono/tzdb_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "accesses and controls the global time zone database information"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono::remote_version",
    "link": "cpp/chrono/tzdb_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "accesses and controls the global time zone database information"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::round",
    "link": "cpp/chrono/duration/round",
    "marks": {
      "since": "c++17"
    },
    "note": "std::chrono::duration",
    "description": "converts a duration to another, rounding to nearest, ties to even"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::round",
    "link": "cpp/chrono/time_point/round",
    "marks": {
      "since": "c++17"
    },
    "note": "std::chrono::time_point",
    "description": "converts a time_point to another, rounding to nearest, ties to even"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::Saturday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::seconds",
    "link": "cpp/chrono/duration",
    "marks": {
      "since": "c++11"
    },
    "description": "duration type with Period std::ratio<1>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::September",
    "link": "cpp/chrono/month",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::steady_clock",
    "link": "cpp/chrono/steady_clock",
    "marks": {
      "since": "c++11"
    },
    "description": "monotonic clock that will never be adjusted"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::Sunday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::sys_info",
    "link": "cpp/chrono/sys_info",
    "marks": {
      "since": "c++20"
    },
    "description": "represents information about a time zone at a particular time point"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::sys_seconds",
    "link": "cpp/chrono/system_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::sys_time<std::chrono::seconds>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::chrono::sys_time",
    "link": "cpp/chrono/system_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::time_point<std::chrono::sys_clock, _>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::system_clock",
    "link": "cpp/chrono/system_clock",
    "marks": {
      "since": "c++11"
    },
    "description": "wall clock time from the system-wide realtime clock"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::tai_clock",
    "link": "cpp/chrono/tai_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "Clock for International Atomic Time (TAI)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::tai_seconds",
    "link": "cpp/chrono/tai_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::tai_time<std::chrono::seconds>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::chrono::tai_time",
    "link": "cpp/chrono/tai_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::time_point<std::chrono::tai_clock, _>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::Thursday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::time_point",
    "link": "cpp/chrono/time_point",
    "marks": {
      "since": "c++11"
    },
    "description": "a point in time"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::chrono::time_point_cast",
    "link": "cpp/chrono/time_point/time_point_cast",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a time point to another time point on the same clock, with a different duration"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::time_zone",
    "link": "cpp/chrono/time_zone",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a time zone"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::time_zone_link",
    "link": "cpp/chrono/time_zone_link",
    "marks": {
      "since": "c++20"
    },
    "description": "represents an alternative name for a time zone"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::treat_as_floating_point",
    "link": "cpp/chrono/treat_as_floating_point",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates that a duration is convertible to duration with different tick period"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::Tuesday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::tzdb",
    "link": "cpp/chrono/tzdb",
    "marks": {
      "since": "c++20"
    },
    "description": "describes a copy of the IANA time zone database"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::tzdb_list",
    "link": "cpp/chrono/tzdb_list",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a linked list of tzdb"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::utc_clock",
    "link": "cpp/chrono/utc_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "Clock for Coordinated Universal Time (UTC)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::utc_seconds",
    "link": "cpp/chrono/utc_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::utc_time<std::chrono::seconds>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::chrono::utc_time",
    "link": "cpp/chrono/utc_clock",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::time_point<std::chrono::utc_clock, _>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::chrono::Wednesday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::weekday",
    "link": "cpp/chrono/weekday",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a day of the week in the Gregorian calendar"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::weekday_indexed",
    "link": "cpp/chrono/weekday_indexed",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the nth weekday of a month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::weekday_last",
    "link": "cpp/chrono/weekday_last",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the last weekday of a month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::year",
    "link": "cpp/chrono/year",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a year in the Gregorian calendar"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::year_month",
    "link": "cpp/chrono/year_month",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a specific month of a specific year"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::year_month_day",
    "link": "cpp/chrono/year_month_day",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a specific year, month, and day"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::year_month_day_last",
    "link": "cpp/chrono/year_month_day_last",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the last day of a specific year and month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::year_month_weekday",
    "link": "cpp/chrono/year_month_weekday",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the nth weekday of a specific year and month"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::year_month_weekday_last",
    "link": "cpp/chrono/year_month_weekday_last",
    "marks": {
      "since": "c++20"
    },
    "description": "represents the last weekday of a specific year and month"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::chrono::zoned_seconds",
    "link": "cpp/chrono/zoned_time",
    "marks": {
      "since": "c++20"
    },
    "description": "std::chrono::zoned_time<std::chrono::seconds>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::chrono::zoned_time",
    "link": "cpp/chrono/zoned_time",
    "marks": {
      "since": "c++20"
    },
    "description": "represents a time zone and a time point"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::chrono::zoned_traits",
    "link": "cpp/chrono/zoned_traits",
    "marks": {
      "since": "c++20"
    },
    "description": "traits class for time zone pointers used by zoned_time"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::chrono_literals",
    "link": "cpp/symbol_index/chrono_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::d",
    "link": "cpp/chrono/operator\"\"d",
    "marks": {
      "since": "c++20"
    },
    "description": "a std::chrono::day literal representing a day of a month"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::h",
    "link": "cpp/chrono/operator\"\"h",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::chrono::duration literal representing hours"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::min",
    "link": "cpp/chrono/operator\"\"min",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::chrono::duration literal representing minutes"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::ms",
    "link": "cpp/chrono/operator\"\"ms",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::chrono::duration literal representing milliseconds"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::ns",
    "link": "cpp/chrono/operator\"\"ns",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::chrono::duration literal representing nanoseconds"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::s",
    "link": "cpp/chrono/operator\"\"s",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::chrono::duration literal representing seconds"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::us",
    "link": "cpp/chrono/operator\"\"us",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::chrono::duration literal representing microseconds"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::chrono_literals::y",
    "link": "cpp/chrono/operator\"\"y",
    "marks": {
      "since": "c++20"
    },
    "description": "a std::chrono::year literal representing a particular year"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::cin",
    "link": "cpp/io/cin",
    "marks": {},
    "description": "reads from the standard C input stream stdin"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::clamp",
    "link": "cpp/algorithm/clamp",
    "marks": {
      "since": "c++17"
    },
    "description": "clamps a value between a pair of boundary values"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::clearerr",
    "link": "cpp/io/c/clearerr",
    "marks": {},
    "description": "clears errors"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::clock",
    "link": "cpp/chrono/c/clock",
    "marks": {},
    "description": "returns raw processor clock time since the program is started"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::clock_t",
    "link": "cpp/chrono/c/clock_t",
    "marks": {},
    "description": "process running time"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::clog",
    "link": "cpp/io/clog",
    "marks": {},
    "description": "writes to the standard C error stream stderr"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::cmatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++11"
    },
    "description": "std::match_results<const char*>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cmp_equal",
    "link": "cpp/utility/intcmp",
    "marks": {
      "since": "c++20"
    },
    "description": "compares two integer values without value change caused by conversion"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cmp_greater",
    "link": "cpp/utility/intcmp",
    "marks": {
      "since": "c++20"
    },
    "description": "compares two integer values without value change caused by conversion"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cmp_greater_equal",
    "link": "cpp/utility/intcmp",
    "marks": {
      "since": "c++20"
    },
    "description": "compares two integer values without value change caused by conversion"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cmp_less",
    "link": "cpp/utility/intcmp",
    "marks": {
      "since": "c++20"
    },
    "description": "compares two integer values without value change caused by conversion"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cmp_less_equal",
    "link": "cpp/utility/intcmp",
    "marks": {
      "since": "c++20"
    },
    "description": "compares two integer values without value change caused by conversion"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cmp_not_equal",
    "link": "cpp/utility/intcmp",
    "marks": {
      "since": "c++20"
    },
    "description": "compares two integer values without value change caused by conversion"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::codecvt",
    "link": "cpp/locale/codecvt",
    "marks": {},
    "description": "converts between character encodings, including UTF-8, UTF-16, UTF-32"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::codecvt_base",
    "link": "cpp/locale/codecvt_base",
    "marks": {},
    "description": "defines character conversion errors"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::codecvt_byname",
    "link": "cpp/locale/codecvt_byname",
    "marks": {},
    "description": "represents the system-supplied std::codecvt for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::collate",
    "link": "cpp/locale/collate",
    "marks": {},
    "description": "defines lexicographical comparison and hashing of strings"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::collate_byname",
    "link": "cpp/locale/collate_byname",
    "marks": {},
    "description": "represents the system-supplied std::collate for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::common_comparison_category",
    "link": "cpp/utility/compare/common_comparison_category",
    "marks": {
      "since": "c++20"
    },
    "description": "the strongest comparison category to which all of the given types can be converted"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::common_comparison_category_t",
    "link": "cpp/utility/compare/common_comparison_category",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper type of std::common_comparison_category"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::common_iterator",
    "link": "cpp/iterator/common_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "adapts an iterator type and its sentinel into a common iterator type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::common_reference",
    "link": "cpp/types/common_reference",
    "marks": {
      "since": "c++20"
    },
    "description": "determines the common reference type of a group of types"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::common_reference_t",
    "link": "cpp/types/common_reference",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper type of std::common_reference"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::common_reference_with",
    "link": "cpp/concepts/common_reference_with",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that two types share a common reference type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::common_type",
    "link": "cpp/types/common_type",
    "marks": {
      "since": "c++11"
    },
    "description": "determines the common type of a group of types"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::common_type_t",
    "link": "cpp/types/common_type",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::common_type"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::common_with",
    "link": "cpp/concepts/common_with",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that two types share a common type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_1",
    "link": "cpp/numeric/special_functions/comp_ellint_1",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the first kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_1f",
    "link": "cpp/numeric/special_functions/comp_ellint_1",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the first kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_1l",
    "link": "cpp/numeric/special_functions/comp_ellint_1",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the first kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_2",
    "link": "cpp/numeric/special_functions/comp_ellint_2",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the second kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_2f",
    "link": "cpp/numeric/special_functions/comp_ellint_2",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the second kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_2l",
    "link": "cpp/numeric/special_functions/comp_ellint_2",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the second kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_3",
    "link": "cpp/numeric/special_functions/comp_ellint_3",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the third kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_3f",
    "link": "cpp/numeric/special_functions/comp_ellint_3",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the third kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::comp_ellint_3l",
    "link": "cpp/numeric/special_functions/comp_ellint_3",
    "marks": {
      "since": "c++17"
    },
    "description": "(complete) elliptic integral of the third kind"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::compare_partial_order_fallback",
    "link": "cpp/utility/compare/compare_partial_order_fallback",
    "marks": {
      "since": "c++20"
    },
    "description": "performs 3-way comparison and produces a result of type std::partial_ordering, even if operator<=> is unavailable"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::compare_strong_order_fallback",
    "link": "cpp/utility/compare/compare_strong_order_fallback",
    "marks": {
      "since": "c++20"
    },
    "description": "performs 3-way comparison and produces a result of type std::strong_ordering, even if operator<=> is unavailable"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::compare_three_way",
    "link": "cpp/utility/compare/compare_three_way",
    "marks": {
      "since": "c++20"
    },
    "description": "constrained function object implementing x <=> y"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::compare_three_way_result",
    "link": "cpp/utility/compare/compare_three_way_result",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains the result type of the three-way comparison operator <=> on given types"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::compare_three_way_result_t",
    "link": "cpp/utility/compare/compare_three_way_result",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper type of std::compare_three_way_result"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::compare_weak_order_fallback",
    "link": "cpp/utility/compare/compare_weak_order_fallback",
    "marks": {
      "since": "c++20"
    },
    "description": "performs 3-way comparison and produces a result of type std::weak_ordering, even if operator<=> is unavailable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::complex",
    "link": "cpp/numeric/complex",
    "marks": {},
    "description": "a complex number type"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::complex_literals",
    "link": "cpp/symbol_index/complex_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::complex_literals::i",
    "link": "cpp/numeric/complex/operator\"\"i",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::complex literal representing purely imaginary number"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::complex_literals::if",
    "link": "cpp/numeric/complex/operator\"\"i",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::complex literal representing purely imaginary number"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::complex_literals::il",
    "link": "cpp/numeric/complex/operator\"\"i",
    "marks": {
      "since": "c++14"
    },
    "description": "a std::complex literal representing purely imaginary number"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::conditional",
    "link": "cpp/types/conditional",
    "marks": {
      "since": "c++11"
    },
    "description": "chooses one type or another based on compile-time boolean"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::conditional_t",
    "link": "cpp/types/conditional",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::conditional"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::condition_variable",
    "link": "cpp/thread/condition_variable",
    "marks": {
      "since": "c++11"
    },
    "description": "provides a condition variable associated with a std::unique_lock"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::condition_variable_any",
    "link": "cpp/thread/condition_variable_any",
    "marks": {
      "since": "c++11"
    },
    "description": "provides a condition variable associated with any lock type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::conjunction",
    "link": "cpp/types/conjunction",
    "marks": {
      "since": "c++17"
    },
    "description": "variadic logical AND metafunction"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::conjunction_v",
    "link": "cpp/types/conjunction",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::conjunction"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::conj",
    "link": "cpp/numeric/complex/conj",
    "marks": {},
    "description": "returns the complex conjugate"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::const_iterator",
    "link": "cpp/iterator/const_iterator",
    "marks": {
      "since": "c++23"
    },
    "description": "computes a constant iterator type for a given type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::const_pointer_cast",
    "link": "cpp/memory/shared_ptr/pointer_cast",
    "marks": {
      "since": "c++11"
    },
    "description": "applies static_cast, dynamic_cast, const_cast, or reinterpret_cast to the stored pointer"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::const_sentinel",
    "link": "cpp/iterator/const_sentinel",
    "marks": {
      "since": "c++23"
    },
    "description": "computes a sentinel type to be used with constant iterators"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::construct_at",
    "link": "cpp/memory/construct_at",
    "marks": {
      "since": "c++20"
    },
    "description": "creates an object at a given address"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::constructible_from",
    "link": "cpp/concepts/constructible_from",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a variable of the type can be constructed from or bound to a set of argument types"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::contiguous_iterator",
    "link": "cpp/iterator/contiguous_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a random_access_iterator is a contiguous iterator, referring to elements that are contiguous in memory"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::contiguous_iterator_tag",
    "link": "cpp/iterator/iterator_tags",
    "marks": {
      "since": "c++20"
    },
    "description": "empty class types used to indicate iterator categories"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::convertible_to",
    "link": "cpp/concepts/convertible_to",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is implicitly convertible to another type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::copy",
    "link": "cpp/algorithm/copy",
    "marks": {},
    "description": "copies a range of elements to a new location"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::copy_backward",
    "link": "cpp/algorithm/copy_backward",
    "marks": {},
    "description": "copies a range of elements in backwards order"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::copy_constructible",
    "link": "cpp/concepts/copy_constructible",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an object of a type can be copy constructed and move constructed"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::copy_if",
    "link": "cpp/algorithm/copy",
    "marks": {
      "since": "c++11"
    },
    "description": "copies a range of elements to a new location"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::copy_n",
    "link": "cpp/algorithm/copy_n",
    "marks": {
      "since": "c++11"
    },
    "description": "copies a number of elements to a new location"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::copyable",
    "link": "cpp/concepts/copyable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an object of a type can be copied, moved, and swapped"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::copyable_function",
    "link": "cpp/utility/functional/copyable_function",
    "marks": {
      "since": "c++26"
    },
    "description": "copyable wrapper of any copy constructible callable object that supports qualifiers in a given call signature"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::copysign",
    "link": "cpp/numeric/math/copysign",
    "marks": {
      "since": "c++11"
    },
    "description": "copies the sign of a floating point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::copysignf",
    "link": "cpp/numeric/math/copysign",
    "marks": {
      "since": "c++11"
    },
    "description": "copies the sign of a floating point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::copysignl",
    "link": "cpp/numeric/math/copysign",
    "marks": {
      "since": "c++11"
    },
    "description": "copies the sign of a floating point value"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::coroutine_handle",
    "link": "cpp/coroutine/coroutine_handle",
    "marks": {
      "since": "c++20"
    },
    "description": "used to refer to a suspended or executing coroutine"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::coroutine_traits",
    "link": "cpp/coroutine/coroutine_traits",
    "marks": {
      "since": "c++20"
    },
    "description": "trait type for discovering coroutine promise types"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cos",
    "link": "cpp/numeric/math/cos",
    "marks": {},
    "description": "computes cosine (cos(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cos",
    "link": "cpp/numeric/complex/cos",
    "marks": {},
    "note": "std::complex",
    "description": "computes cosine of a complex number (cos(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cos",
    "link": "cpp/numeric/valarray/cos",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::cos to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cosf",
    "link": "cpp/numeric/math/cos",
    "marks": {
      "since": "c++11"
    },
    "description": "computes cosine (cos(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cosh",
    "link": "cpp/numeric/math/cosh",
    "marks": {},
    "description": "computes hyperbolic cosine (cosh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cosh",
    "link": "cpp/numeric/complex/cosh",
    "marks": {},
    "note": "std::complex",
    "description": "computes hyperbolic cosine of a complex number (cosh(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cosh",
    "link": "cpp/numeric/valarray/cosh",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::cosh to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::coshf",
    "link": "cpp/numeric/math/cosh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes hyperbolic cosine (cosh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::coshl",
    "link": "cpp/numeric/math/cosh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes hyperbolic cosine (cosh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cosl",
    "link": "cpp/numeric/math/cos",
    "marks": {
      "since": "c++11"
    },
    "description": "computes cosine (cos(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::count",
    "link": "cpp/algorithm/count",
    "marks": {},
    "description": "returns the number of elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::count_if",
    "link": "cpp/algorithm/count",
    "marks": {},
    "description": "returns the number of elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::counted_iterator",
    "link": "cpp/iterator/counted_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "iterator adaptor that tracks the distance to the end of the range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::counting_semaphore",
    "link": "cpp/thread/counting_semaphore",
    "marks": {
      "since": "c++20"
    },
    "description": "semaphore that models a non-negative resource count"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::countl_one",
    "link": "cpp/numeric/countl_one",
    "marks": {
      "since": "c++20"
    },
    "description": "counts the number of consecutive 1 bits, starting from the most significant bit"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::countl_zero",
    "link": "cpp/numeric/countl_zero",
    "marks": {
      "since": "c++20"
    },
    "description": "counts the number of consecutive ​0​ bits, starting from the most significant bit"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::countr_one",
    "link": "cpp/numeric/countr_one",
    "marks": {
      "since": "c++20"
    },
    "description": "counts the number of consecutive 1 bits, starting from the least significant bit"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::countr_zero",
    "link": "cpp/numeric/countr_zero",
    "marks": {
      "since": "c++20"
    },
    "description": "counts the number of consecutive ​0​ bits, starting from the least significant bit"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::cout",
    "link": "cpp/io/cout",
    "marks": {},
    "description": "writes to the standard C output stream stdout"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::crbegin",
    "link": "cpp/iterator/rbegin",
    "marks": {
      "since": "c++14"
    },
    "description": "returns a reverse iterator to the beginning of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::cref",
    "link": "cpp/utility/functional/ref",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a std::reference_wrapper with a type deduced from its argument"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::cregex_iterator",
    "link": "cpp/regex/regex_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_iterator<const char*>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::cregex_token_iterator",
    "link": "cpp/regex/regex_token_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_token_iterator<const char*>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::crend",
    "link": "cpp/iterator/rend",
    "marks": {
      "since": "c++14"
    },
    "description": "returns a reverse end iterator for a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::csub_match",
    "link": "cpp/regex/sub_match",
    "marks": {
      "since": "c++11"
    },
    "description": "std::sub_match<const char*>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ctime",
    "link": "cpp/chrono/c/ctime",
    "marks": {},
    "description": "converts a std::time_t object to a textual representation"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ctype",
    "link": "cpp/locale/ctype",
    "marks": {},
    "description": "defines character classification tables"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ctype_base",
    "link": "cpp/locale/ctype_base",
    "marks": {},
    "description": "defines character classification categories"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ctype_byname",
    "link": "cpp/locale/ctype_byname",
    "marks": {},
    "description": "represents the system-supplied std::ctype for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::current_exception",
    "link": "cpp/error/current_exception",
    "marks": {
      "since": "c++11"
    },
    "description": "captures the current exception in a std::exception_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::cv_status",
    "link": "cpp/thread/cv_status",
    "marks": {
      "since": "c++11"
    },
    "description": "lists the possible results of timed waits on condition variables"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_i",
    "link": "cpp/numeric/special_functions/cyl_bessel_i",
    "marks": {
      "since": "c++17"
    },
    "description": "regular modified cylindrical Bessel functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_if",
    "link": "cpp/numeric/special_functions/cyl_bessel_i",
    "marks": {
      "since": "c++17"
    },
    "description": "regular modified cylindrical Bessel functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_il",
    "link": "cpp/numeric/special_functions/cyl_bessel_i",
    "marks": {
      "since": "c++17"
    },
    "description": "regular modified cylindrical Bessel functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_j",
    "link": "cpp/numeric/special_functions/cyl_bessel_j",
    "marks": {
      "since": "c++17"
    },
    "description": "cylindrical Bessel functions (of the first kind)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_jf",
    "link": "cpp/numeric/special_functions/cyl_bessel_j",
    "marks": {
      "since": "c++17"
    },
    "description": "cylindrical Bessel functions (of the first kind)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_jl",
    "link": "cpp/numeric/special_functions/cyl_bessel_j",
    "marks": {
      "since": "c++17"
    },
    "description": "cylindrical Bessel functions (of the first kind)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_k",
    "link": "cpp/numeric/special_functions/cyl_bessel_k",
    "marks": {
      "since": "c++17"
    },
    "description": "irregular modified cylindrical Bessel functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_kf",
    "link": "cpp/numeric/special_functions/cyl_bessel_k",
    "marks": {
      "since": "c++17"
    },
    "description": "irregular modified cylindrical Bessel functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_bessel_kl",
    "link": "cpp/numeric/special_functions/cyl_bessel_k",
    "marks": {
      "since": "c++17"
    },
    "description": "irregular modified cylindrical Bessel functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_neumann",
    "link": "cpp/numeric/special_functions/cyl_neumann",
    "marks": {
      "since": "c++17"
    },
    "description": "cylindrical Neumann functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_neumannf",
    "link": "cpp/numeric/special_functions/cyl_neumann",
    "marks": {
      "since": "c++17"
    },
    "description": "cylindrical Neumann functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::cyl_neumannl",
    "link": "cpp/numeric/special_functions/cyl_neumann",
    "marks": {
      "since": "c++17"
    },
    "description": "cylindrical Neumann functions"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::data",
    "link": "cpp/iterator/data",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains the pointer to the underlying array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::dec",
    "link": "cpp/io/manip/hex",
    "marks": {},
    "description": "changes the base used for integer I/O"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::deca",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<10, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::decay",
    "link": "cpp/types/decay",
    "marks": {
      "since": "c++11"
    },
    "description": "applies type transformations as when passing a function argument by value"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::decay_t",
    "link": "cpp/types/decay",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::decay"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::deci",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 10>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::declval",
    "link": "cpp/utility/declval",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains a reference to its argument for use in unevaluated context"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::default_accessor",
    "link": "cpp/container/mdspan/default_accessor",
    "marks": {
      "since": "c++23"
    },
    "description": "a type for indexed access to elements of mdspan"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::default_delete",
    "link": "cpp/memory/default_delete",
    "marks": {
      "since": "c++11"
    },
    "description": "default deleter for unique_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::default_initializable",
    "link": "cpp/concepts/default_initializable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an object of a type can be default constructed"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::default_random_engine",
    "link": "cpp/numeric/random",
    "marks": {
      "since": "c++11"
    },
    "description": "implementation-defined"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::default_searcher",
    "link": "cpp/utility/functional/default_searcher",
    "marks": {
      "since": "c++17"
    },
    "description": "standard C++ library search algorithm implementation"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::default_sentinel",
    "link": "cpp/iterator/default_sentinel_t",
    "marks": {
      "since": "c++20"
    },
    "description": "an object of type default_sentinel_t used with iterators that know the bound of their range"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::default_sentinel_t",
    "link": "cpp/iterator/default_sentinel_t",
    "marks": {
      "since": "c++20"
    },
    "description": "default sentinel for use with iterators that know the bound of their range"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::defaultfloat",
    "link": "cpp/io/manip/fixed",
    "marks": {
      "since": "c++11"
    },
    "description": "changes formatting used for floating-point I/O"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::defer_lock",
    "link": "cpp/thread/lock_tag",
    "marks": {
      "since": "c++11"
    },
    "description": "tags used to specify locking strategy"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::defer_lock_t",
    "link": "cpp/thread/lock_tag_t",
    "marks": {
      "since": "c++11"
    },
    "description": "tags used to specify locking strategy"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::denorm_absent",
    "link": "cpp/types/numeric_limits/float_denorm_style",
    "marks": {},
    "description": "the type does not support subnormal values"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::denorm_indeterminate",
    "link": "cpp/types/numeric_limits/float_denorm_style",
    "marks": {},
    "description": "support of subnormal values cannot be determined"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::denorm_present",
    "link": "cpp/types/numeric_limits/float_denorm_style",
    "marks": {},
    "description": "the type allows subnormal values"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::deque",
    "link": "cpp/container/deque",
    "marks": {},
    "description": "double-ended queue"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::derived_from",
    "link": "cpp/concepts/derived_from",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is derived from another type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::destroy",
    "link": "cpp/memory/destroy",
    "marks": {
      "since": "c++17"
    },
    "description": "destroys a range of objects"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::destroy_at",
    "link": "cpp/memory/destroy_at",
    "marks": {
      "since": "c++17"
    },
    "description": "destroys an object at a given address"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::destroy_n",
    "link": "cpp/memory/destroy_n",
    "marks": {
      "since": "c++17"
    },
    "description": "destroys a number of objects in a range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::destroying_delete",
    "link": "cpp/memory/new/destroying_delete_t",
    "marks": {
      "since": "c++20"
    },
    "description": "a tag used to select destroying-delete overloads of operator delete"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::destroying_delete_t",
    "link": "cpp/memory/new/destroying_delete_t",
    "marks": {
      "since": "c++20"
    },
    "description": "a tag used to select destroying-delete overloads of operator delete"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::destructible",
    "link": "cpp/concepts/destructible",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an object of the type can be destroyed"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::dextents",
    "link": "cpp/container/mdspan/extents",
    "marks": {
      "since": "c++23"
    },
    "description": "convenience alias template for an all-dynamic std::extents"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::difftime",
    "link": "cpp/chrono/c/difftime",
    "marks": {},
    "description": "computes the difference between times"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::dims",
    "link": "cpp/container/mdspan/extents",
    "marks": {
      "since": "c++26"
    },
    "description": "convenience alias template for an all-dynamic std::extents"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::disable_sized_sentinel_for",
    "link": "cpp/iterator/sized_sentinel_for",
    "marks": {
      "since": "c++20"
    },
    "description": "used to prevent iterators and sentinels that can be subtracted but do not actually model sized_sentinel_for from satisfying the concept"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::discrete_distribution",
    "link": "cpp/numeric/random/discrete_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces random integers on a discrete distribution"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::discard_block_engine",
    "link": "cpp/numeric/random/discard_block_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "discards some output of a random number engine"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::disjunction",
    "link": "cpp/types/disjunction",
    "marks": {
      "since": "c++17"
    },
    "description": "variadic logical OR metafunction"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::disjunction_v",
    "link": "cpp/types/disjunction",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::disjunction"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::distance",
    "link": "cpp/iterator/distance",
    "marks": {},
    "description": "returns the distance between two iterators"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::div",
    "link": "cpp/numeric/math/div",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::div_sat",
    "link": "cpp/numeric/div_sat",
    "marks": {
      "since": "c++26"
    },
    "description": "saturating division operation on two integers"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::div_t",
    "link": "cpp/numeric/math/div",
    "marks": {},
    "description": "structure type, returned by std::div"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::divides",
    "link": "cpp/utility/functional/divides",
    "marks": {},
    "description": "function object implementing x / y"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::domain_error",
    "link": "cpp/error/domain_error",
    "marks": {},
    "description": "exception class to report domain errors"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::double_t",
    "link": "cpp/numeric/math",
    "marks": {
      "since": "c++11"
    },
    "description": "most efficient floating-point type at least as wide as double"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::dynamic_extent",
    "link": "cpp/container/span/dynamic_extent",
    "marks": {
      "since": "c++20"
    },
    "description": "a constant of type std::size_t signifying that the span has dynamic extent"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::dynamic_pointer_cast",
    "link": "cpp/memory/shared_ptr/pointer_cast",
    "marks": {
      "since": "c++11"
    },
    "description": "applies static_cast, dynamic_cast, const_cast, or reinterpret_cast to the stored pointer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_1",
    "link": "cpp/numeric/special_functions/ellint_1",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the first kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_1f",
    "link": "cpp/numeric/special_functions/ellint_1",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the first kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_1l",
    "link": "cpp/numeric/special_functions/ellint_1",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the first kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_2",
    "link": "cpp/numeric/special_functions/ellint_2",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the second kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_2f",
    "link": "cpp/numeric/special_functions/ellint_2",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the second kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_2l",
    "link": "cpp/numeric/special_functions/ellint_2",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the second kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_3",
    "link": "cpp/numeric/special_functions/ellint_3",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the third kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_3f",
    "link": "cpp/numeric/special_functions/ellint_3",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the third kind"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ellint_3l",
    "link": "cpp/numeric/special_functions/ellint_3",
    "marks": {
      "since": "c++17"
    },
    "description": "(incomplete) elliptic integral of the third kind"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::emit_on_flush",
    "link": "cpp/io/manip/emit_on_flush",
    "marks": {
      "since": "c++20"
    },
    "description": "controls whether a stream's basic_syncbuf emits on flush"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::empty",
    "link": "cpp/iterator/empty",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the container is empty"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::enable_if",
    "link": "cpp/types/enable_if",
    "marks": {
      "since": "c++11"
    },
    "description": "conditionally removes a function overload or template specialization from overload resolution"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::enable_if_t",
    "link": "cpp/types/enable_if",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::enable_if"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::enable_shared_from_this",
    "link": "cpp/memory/enable_shared_from_this",
    "marks": {
      "since": "c++11"
    },
    "description": "allows an object to create a shared_ptr referring to itself"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::end",
    "link": "cpp/iterator/end",
    "marks": {
      "since": "c++11"
    },
    "description": "returns an iterator to the end of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::endian",
    "link": "cpp/types/endian",
    "marks": {
      "since": "c++20"
    },
    "description": "indicates the endianness of scalar types"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::endl",
    "link": "cpp/io/manip/endl",
    "marks": {},
    "description": "outputs '\\n' and flushes the output stream"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::ends",
    "link": "cpp/io/manip/ends",
    "marks": {},
    "description": "outputs '\\0'"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::equal",
    "link": "cpp/algorithm/equal",
    "marks": {},
    "description": "determines if two sets of elements are the same"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::equal_range",
    "link": "cpp/algorithm/equal_range",
    "marks": {},
    "description": "returns range of elements matching a specific key"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::equal_to",
    "link": "cpp/utility/functional/equal_to",
    "marks": {},
    "description": "function object implementing x == y"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::equality_comparable",
    "link": "cpp/concepts/equality_comparable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that operator == is an equivalence relation"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::equality_comparable_with",
    "link": "cpp/concepts/equality_comparable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that operator == is an equivalence relation"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::equivalence_relation",
    "link": "cpp/concepts/equivalence_relation",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a relation imposes an equivalence relation"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase",
    "link": "cpp/string/basic_string/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::basic_string",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase",
    "link": "cpp/container/deque/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::deque",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase",
    "link": "cpp/container/forward_list/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::forward_list",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase",
    "link": "cpp/container/inplace_vector/erase2",
    "marks": {
      "since": "c++26"
    },
    "note": "std::inplace_vector",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase",
    "link": "cpp/container/list/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::list",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase",
    "link": "cpp/container/vector/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::vector",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/string/basic_string/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::basic_string",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/deque/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::deque",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/flat_map/erase_if",
    "marks": {
      "since": "c++23"
    },
    "note": "std::flat_map",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/flat_multimap/erase_if",
    "marks": {
      "since": "c++23"
    },
    "note": "std::flat_multimap",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/flat_multiset/erase_if",
    "marks": {
      "since": "c++23"
    },
    "note": "std::flat_multiset",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/flat_set/erase_if",
    "marks": {
      "since": "c++23"
    },
    "note": "std::flat_set",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/forward_list/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::forward_list",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/inplace_vector/erase2",
    "marks": {
      "since": "c++26"
    },
    "note": "std::inplace_vector",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/list/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::list",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/map/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::map",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/multimap/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::multimap",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/multiset/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::multiset",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/set/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::set",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/unordered_map/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::unordered_map",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/unordered_multimap/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::unordered_multimap",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/unordered_multiset/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::unordered_multiset",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/unordered_set/erase_if",
    "marks": {
      "since": "c++20"
    },
    "note": "std::unordered_set",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::erase_if",
    "link": "cpp/container/vector/erase2",
    "marks": {
      "since": "c++20"
    },
    "note": "std::vector",
    "description": "erases all elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::erf",
    "link": "cpp/numeric/math/erf",
    "marks": {
      "since": "c++11"
    },
    "description": "error function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::erfc",
    "link": "cpp/numeric/math/erfc",
    "marks": {
      "since": "c++11"
    },
    "description": "complementary error function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::erfcf",
    "link": "cpp/numeric/math/erfc",
    "marks": {
      "since": "c++11"
    },
    "description": "complementary error function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::erfcl",
    "link": "cpp/numeric/math/erfc",
    "marks": {
      "since": "c++11"
    },
    "description": "complementary error function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::erff",
    "link": "cpp/numeric/math/erf",
    "marks": {
      "since": "c++11"
    },
    "description": "error function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::erfl",
    "link": "cpp/numeric/math/erf",
    "marks": {
      "since": "c++11"
    },
    "description": "error function"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::errc",
    "link": "cpp/error/errc",
    "marks": {
      "since": "c++11"
    },
    "description": "the std::error_condition enumeration listing all standard <cerrno> macro constants"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::error_category",
    "link": "cpp/error/error_category",
    "marks": {
      "since": "c++11"
    },
    "description": "base class for error categories"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::error_code",
    "link": "cpp/error/error_code",
    "marks": {
      "since": "c++11"
    },
    "description": "holds a platform-dependent error code"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::error_condition",
    "link": "cpp/error/error_condition",
    "marks": {
      "since": "c++11"
    },
    "description": "holds a portable error code"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::exa",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000000000000000000, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::exception",
    "link": "cpp/error/exception",
    "marks": {},
    "description": "base class for exceptions thrown by the standard library components"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::exception_ptr",
    "link": "cpp/error/exception_ptr",
    "marks": {
      "since": "c++11"
    },
    "description": "shared pointer type for handling exception objects"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::exchange",
    "link": "cpp/utility/exchange",
    "marks": {
      "since": "c++14"
    },
    "description": "replaces the argument with a new value and returns its previous value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::exclusive_scan",
    "link": "cpp/algorithm/exclusive_scan",
    "marks": {
      "since": "c++17"
    },
    "description": "similar to std::partial_sum, excludes the ith input element from the ith sum"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::execution",
    "link": "cpp/symbol_index/execution",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::execution::par",
    "link": "cpp/algorithm/execution_policy_tag",
    "marks": {
      "since": "c++17"
    },
    "description": "global execution policy objects"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::execution::par_unseq",
    "link": "cpp/algorithm/execution_policy_tag",
    "marks": {
      "since": "c++17"
    },
    "description": "global execution policy objects"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::execution::parallel_policy",
    "link": "cpp/algorithm/execution_policy_tag_t",
    "marks": {
      "since": "c++17"
    },
    "description": "execution policy types"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::execution::parallel_unsequenced_policy",
    "link": "cpp/algorithm/execution_policy_tag_t",
    "marks": {
      "since": "c++17"
    },
    "description": "execution policy types"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::execution::seq",
    "link": "cpp/algorithm/execution_policy_tag",
    "marks": {
      "since": "c++17"
    },
    "description": "global execution policy objects"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::execution::sequenced_policy",
    "link": "cpp/algorithm/execution_policy_tag_t",
    "marks": {
      "since": "c++17"
    },
    "description": "execution policy types"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::execution::unseq",
    "link": "cpp/algorithm/execution_policy_tag",
    "marks": {
      "since": "c++20"
    },
    "description": "global execution policy objects"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::execution::unsequenced_policy",
    "link": "cpp/algorithm/execution_policy_tag_t",
    "marks": {
      "since": "c++20"
    },
    "description": "execution policy types"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::exit",
    "link": "cpp/utility/program/exit",
    "marks": {},
    "description": "causes normal program termination with cleaning up"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::exp",
    "link": "cpp/numeric/math/exp",
    "marks": {},
    "description": "returns e raised to the given power (ex)"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::exp",
    "link": "cpp/numeric/complex/exp",
    "marks": {},
    "note": "std::complex",
    "description": "complex base e exponential"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::exp",
    "link": "cpp/numeric/valarray/exp",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::exp to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::exp2",
    "link": "cpp/numeric/math/exp2",
    "marks": {
      "since": "c++11"
    },
    "description": "returns 2 raised to the given power (2x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::exp2f",
    "link": "cpp/numeric/math/exp2",
    "marks": {
      "since": "c++11"
    },
    "description": "returns 2 raised to the given power (2x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::exp2l",
    "link": "cpp/numeric/math/exp2",
    "marks": {
      "since": "c++11"
    },
    "description": "returns 2 raised to the given power (2x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expf",
    "link": "cpp/numeric/math/exp",
    "marks": {
      "since": "c++11"
    },
    "description": "returns e raised to the given power (ex)"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::expected",
    "link": "cpp/utility/expected",
    "marks": {
      "since": "c++23"
    },
    "description": "a wrapper that contains either an expected or error value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expint",
    "link": "cpp/numeric/special_functions/expint",
    "marks": {
      "since": "c++17"
    },
    "description": "exponential integral"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expintf",
    "link": "cpp/numeric/special_functions/expint",
    "marks": {
      "since": "c++17"
    },
    "description": "exponential integral"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expintl",
    "link": "cpp/numeric/special_functions/expint",
    "marks": {
      "since": "c++17"
    },
    "description": "exponential integral"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expl",
    "link": "cpp/numeric/math/exp",
    "marks": {
      "since": "c++11"
    },
    "description": "returns e raised to the given power (ex)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expm1",
    "link": "cpp/numeric/math/expm1",
    "marks": {
      "since": "c++11"
    },
    "description": "returns e raised to the given power, minus one (ex-1)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expm1f",
    "link": "cpp/numeric/math/expm1",
    "marks": {
      "since": "c++11"
    },
    "description": "returns e raised to the given power, minus one (ex-1)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::expm1l",
    "link": "cpp/numeric/math/expm1",
    "marks": {
      "since": "c++11"
    },
    "description": "returns e raised to the given power, minus one (ex-1)"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::exponential_distribution",
    "link": "cpp/numeric/random/exponential_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on an exponential distribution"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::extent",
    "link": "cpp/types/extent",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the size of an array type along a specified dimension"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::extent_v",
    "link": "cpp/types/extent",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::extent"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::extents",
    "link": "cpp/container/mdspan/extents",
    "marks": {
      "since": "c++23"
    },
    "description": "a descriptor of a multidimensional index space of some rank"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::extreme_value_distribution",
    "link": "cpp/numeric/random/extreme_value_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on an extreme value distribution"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fabs",
    "link": "cpp/numeric/math/fabs",
    "marks": {},
    "description": "absolute value of a floating point value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fabsf",
    "link": "cpp/numeric/math/fabs",
    "marks": {
      "since": "c++11"
    },
    "description": "absolute value of a floating point value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fabsl",
    "link": "cpp/numeric/math/fabs",
    "marks": {
      "since": "c++11"
    },
    "description": "absolute value of a floating point value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::false_type",
    "link": "cpp/types/integral_constant",
    "marks": {
      "since": "c++11"
    },
    "description": "std::integral_constant<bool, false>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fclose",
    "link": "cpp/io/c/fclose",
    "marks": {},
    "description": "closes a file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fdim",
    "link": "cpp/numeric/math/fdim",
    "marks": {
      "since": "c++11"
    },
    "description": "positive difference of two floating point values (max(0, x-y))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fdimf",
    "link": "cpp/numeric/math/fdim",
    "marks": {
      "since": "c++11"
    },
    "description": "positive difference of two floating point values (max(0, x-y))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fdiml",
    "link": "cpp/numeric/math/fdim",
    "marks": {
      "since": "c++11"
    },
    "description": "positive difference of two floating point values (max(0, x-y))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::feclearexcept",
    "link": "cpp/numeric/fenv/feclearexcept",
    "marks": {
      "since": "c++11"
    },
    "description": "clears the specified floating-point status flags"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fegetenv",
    "link": "cpp/numeric/fenv/feenv",
    "marks": {
      "since": "c++11"
    },
    "description": "saves or restores the current floating-point environment"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fegetexceptflag",
    "link": "cpp/numeric/fenv/feexceptflag",
    "marks": {
      "since": "c++11"
    },
    "description": "copies the state of the specified floating-point status flags from or to the floating-point environment"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fegetround",
    "link": "cpp/numeric/fenv/feround",
    "marks": {
      "since": "c++11"
    },
    "description": "gets or sets rounding direction"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::feholdexcept",
    "link": "cpp/numeric/fenv/feholdexcept",
    "marks": {
      "since": "c++11"
    },
    "description": "saves the environment, clears all status flags and ignores all future errors"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::femto",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000000000000000>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::fenv_t",
    "link": "cpp/numeric/fenv",
    "marks": {
      "since": "c++11"
    },
    "description": "The type representing the entire floating-point environment"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::feof",
    "link": "cpp/io/c/feof",
    "marks": {},
    "description": "checks for the end-of-file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::feraiseexcept",
    "link": "cpp/numeric/fenv/feraiseexcept",
    "marks": {
      "since": "c++11"
    },
    "description": "raises the specified floating-point exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ferror",
    "link": "cpp/io/c/ferror",
    "marks": {},
    "description": "checks for a file error"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fesetenv",
    "link": "cpp/numeric/fenv/feenv",
    "marks": {
      "since": "c++11"
    },
    "description": "saves or restores the current floating-point environment"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fesetexceptflag",
    "link": "cpp/numeric/fenv/feexceptflag",
    "marks": {
      "since": "c++11"
    },
    "description": "copies the state of the specified floating-point status flags from or to the floating-point environment"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fesetround",
    "link": "cpp/numeric/fenv/feround",
    "marks": {
      "since": "c++11"
    },
    "description": "gets or sets rounding direction"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fetestexcept",
    "link": "cpp/numeric/fenv/fetestexcept",
    "marks": {
      "since": "c++11"
    },
    "description": "determines which of the specified floating-point status flags are set"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::feupdateenv",
    "link": "cpp/numeric/fenv/feupdateenv",
    "marks": {
      "since": "c++11"
    },
    "description": "restores the floating-point environment and raises the previously raised exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::fexcept_t",
    "link": "cpp/numeric/fenv",
    "marks": {
      "since": "c++11"
    },
    "description": "The type representing all floating-point status flags collectively"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fflush",
    "link": "cpp/io/c/fflush",
    "marks": {},
    "description": "synchronizes an output stream with the actual file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fgetc",
    "link": "cpp/io/c/fgetc",
    "marks": {},
    "description": "gets a character from a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fgetpos",
    "link": "cpp/io/c/fgetpos",
    "marks": {},
    "description": "gets the file position indicator"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fgets",
    "link": "cpp/io/c/fgets",
    "marks": {},
    "description": "gets a character string from a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fgetwc",
    "link": "cpp/io/c/fgetwc",
    "marks": {},
    "description": "gets a wide character from a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fgetws",
    "link": "cpp/io/c/fgetws",
    "marks": {},
    "description": "gets a wide string from a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::FILE",
    "link": "cpp/io/c/FILE",
    "marks": {},
    "description": "object type, capable of holding all information needed to control a C I/O stream"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::filebuf",
    "link": "cpp/io/basic_filebuf",
    "marks": {},
    "description": "std::basic_filebuf<char>"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::filesystem",
    "link": "cpp/symbol_index/filesystem",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::absolute",
    "link": "cpp/filesystem/absolute",
    "marks": {
      "since": "c++17"
    },
    "description": "composes an absolute path"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::filesystem::begin",
    "link": "cpp/filesystem/directory_iterator/begin",
    "marks": {
      "since": "c++17"
    },
    "note": "std::filesystem::directory_iterator",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::filesystem::begin",
    "link": "cpp/filesystem/recursive_directory_iterator/begin",
    "marks": {
      "since": "c++17"
    },
    "note": "std::filesystem::recursive_directory_iterator",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::canonical",
    "link": "cpp/filesystem/canonical",
    "marks": {
      "since": "c++17"
    },
    "description": "composes a canonical path"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::copy",
    "link": "cpp/filesystem/copy",
    "marks": {
      "since": "c++17"
    },
    "description": "copies files or directories"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::copy_file",
    "link": "cpp/filesystem/copy_file",
    "marks": {
      "since": "c++17"
    },
    "description": "copies file contents"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::filesystem::copy_options",
    "link": "cpp/filesystem/copy_options",
    "marks": {
      "since": "c++17"
    },
    "description": "specifies semantics of copy operations"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::copy_symlink",
    "link": "cpp/filesystem/copy_symlink",
    "marks": {
      "since": "c++17"
    },
    "description": "copies a symbolic link"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::create_directory",
    "link": "cpp/filesystem/create_directory",
    "marks": {
      "since": "c++17"
    },
    "description": "creates new directory"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::create_directory_symlink",
    "link": "cpp/filesystem/create_symlink",
    "marks": {
      "since": "c++17"
    },
    "description": "creates a symbolic link"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::create_directories",
    "link": "cpp/filesystem/create_directory",
    "marks": {
      "since": "c++17"
    },
    "description": "creates new directory"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::create_hard_link",
    "link": "cpp/filesystem/create_hard_link",
    "marks": {
      "since": "c++17"
    },
    "description": "creates a hard link"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::create_symlink",
    "link": "cpp/filesystem/create_symlink",
    "marks": {
      "since": "c++17"
    },
    "description": "creates a symbolic link"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::current_path",
    "link": "cpp/filesystem/current_path",
    "marks": {
      "since": "c++17"
    },
    "description": "returns or sets the current working directory"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::filesystem::directory_entry",
    "link": "cpp/filesystem/directory_entry",
    "marks": {
      "since": "c++17"
    },
    "description": "a directory entry"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::filesystem::directory_iterator",
    "link": "cpp/filesystem/directory_iterator",
    "marks": {
      "since": "c++17"
    },
    "description": "an iterator to the contents of the directory"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::filesystem::directory_options",
    "link": "cpp/filesystem/directory_options",
    "marks": {
      "since": "c++17"
    },
    "description": "options for iterating directory contents"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::filesystem::end",
    "link": "cpp/filesystem/directory_iterator/begin",
    "marks": {
      "since": "c++17"
    },
    "note": "std::filesystem::directory_iterator",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::filesystem::end",
    "link": "cpp/filesystem/recursive_directory_iterator/begin",
    "marks": {
      "since": "c++17"
    },
    "note": "std::filesystem::recursive_directory_iterator",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::equivalent",
    "link": "cpp/filesystem/equivalent",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether two paths refer to the same file system object"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::exists",
    "link": "cpp/filesystem/exists",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether path refers to existing file system object"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::file_size",
    "link": "cpp/filesystem/file_size",
    "marks": {
      "since": "c++17"
    },
    "description": "returns the size of a file"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::filesystem::file_status",
    "link": "cpp/filesystem/file_status",
    "marks": {
      "since": "c++17"
    },
    "description": "represents file type and permissions"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::filesystem::filesystem_error",
    "link": "cpp/filesystem/filesystem_error",
    "marks": {
      "since": "c++17"
    },
    "description": "an exception thrown on file system errors"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::filesystem::file_time_type",
    "link": "cpp/filesystem/file_time_type",
    "marks": {
      "since": "c++17"
    },
    "description": "represents file time values"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::filesystem::file_type",
    "link": "cpp/filesystem/file_type",
    "marks": {
      "since": "c++17"
    },
    "description": "the type of a file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::hard_link_count",
    "link": "cpp/filesystem/hard_link_count",
    "marks": {
      "since": "c++17"
    },
    "description": "returns the number of hard links referring to the specific file"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::filesystem::hash_value",
    "link": "cpp/filesystem/path/hash_value",
    "marks": {
      "since": "c++17"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_block_file",
    "link": "cpp/filesystem/is_block_file",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the given path refers to block device"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_character_file",
    "link": "cpp/filesystem/is_character_file",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the given path refers to a character device"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_directory",
    "link": "cpp/filesystem/is_directory",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the given path refers to a directory"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_empty",
    "link": "cpp/filesystem/is_empty",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the given path refers to an empty file or directory"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_fifo",
    "link": "cpp/filesystem/is_fifo",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the given path refers to a named pipe"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_other",
    "link": "cpp/filesystem/is_other",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the argument refers to an other file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_regular_file",
    "link": "cpp/filesystem/is_regular_file",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the argument refers to a regular file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_socket",
    "link": "cpp/filesystem/is_socket",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the argument refers to a named IPC socket"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::is_symlink",
    "link": "cpp/filesystem/is_symlink",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether the argument refers to a symbolic link"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::last_write_time",
    "link": "cpp/filesystem/last_write_time",
    "marks": {
      "since": "c++17"
    },
    "description": "gets or sets the time of the last data modification"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::filesystem::path",
    "link": "cpp/filesystem/path",
    "marks": {
      "since": "c++17"
    },
    "description": "represents a path"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::permissions",
    "link": "cpp/filesystem/permissions",
    "marks": {
      "since": "c++17"
    },
    "description": "modifies file access permissions"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::filesystem::perms",
    "link": "cpp/filesystem/perms",
    "marks": {
      "since": "c++17"
    },
    "description": "identifies file system permissions"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::filesystem::perm_options",
    "link": "cpp/filesystem/perm_options",
    "marks": {
      "since": "c++17"
    },
    "description": "specifies semantics of permissions operations"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::proximate",
    "link": "cpp/filesystem/relative",
    "marks": {
      "since": "c++17"
    },
    "description": "composes a relative path"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::read_symlink",
    "link": "cpp/filesystem/read_symlink",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains the target of a symbolic link"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::filesystem::recursive_directory_iterator",
    "link": "cpp/filesystem/recursive_directory_iterator",
    "marks": {
      "since": "c++17"
    },
    "description": "an iterator to the contents of a directory and its subdirectories"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::relative",
    "link": "cpp/filesystem/relative",
    "marks": {
      "since": "c++17"
    },
    "description": "composes a relative path"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::remove",
    "link": "cpp/filesystem/remove",
    "marks": {
      "since": "c++17"
    },
    "description": "removes a file or empty directory\nremoves a file or directory and all its contents, recursively"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::remove_all",
    "link": "cpp/filesystem/remove",
    "marks": {
      "since": "c++17"
    },
    "description": "removes a file or empty directory\nremoves a file or directory and all its contents, recursively"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::rename",
    "link": "cpp/filesystem/rename",
    "marks": {
      "since": "c++17"
    },
    "description": "moves or renames a file or directory"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::resize_file",
    "link": "cpp/filesystem/resize_file",
    "marks": {
      "since": "c++17"
    },
    "description": "changes the size of a regular file by truncation or zero-fill"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::space",
    "link": "cpp/filesystem/space",
    "marks": {
      "since": "c++17"
    },
    "description": "determines available free space on the file system"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::filesystem::space_info",
    "link": "cpp/filesystem/space_info",
    "marks": {
      "since": "c++17"
    },
    "description": "information about free and available space on the filesystem"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::status",
    "link": "cpp/filesystem/status",
    "marks": {
      "since": "c++17"
    },
    "description": "determines file attributes\ndetermines file attributes, checking the symlink target"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::status_known",
    "link": "cpp/filesystem/status_known",
    "marks": {
      "since": "c++17"
    },
    "description": "checks whether file status is known"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::filesystem::swap",
    "link": "cpp/filesystem/path/swap",
    "marks": {
      "since": "c++17"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::symlink_status",
    "link": "cpp/filesystem/status",
    "marks": {
      "since": "c++17"
    },
    "description": "determines file attributes\ndetermines file attributes, checking the symlink target"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::temp_directory_path",
    "link": "cpp/filesystem/temp_directory_path",
    "marks": {
      "since": "c++17"
    },
    "description": "returns a directory suitable for temporary files"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::u8path",
    "link": "cpp/filesystem/path/u8path",
    "marks": {
      "since": "c++17",
      "deprecated": "c++20"
    },
    "description": "creates a path from a UTF-8 encoded source"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::filesystem::weakly_canonical",
    "link": "cpp/filesystem/canonical",
    "marks": {
      "since": "c++17"
    },
    "description": "composes a canonical path"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::fill",
    "link": "cpp/algorithm/fill",
    "marks": {},
    "description": "copy-assigns the given value to every element in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::fill_n",
    "link": "cpp/algorithm/fill_n",
    "marks": {},
    "description": "copy-assigns the given value to N elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::find",
    "link": "cpp/algorithm/find",
    "marks": {},
    "description": "finds the first element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::find_end",
    "link": "cpp/algorithm/find_end",
    "marks": {},
    "description": "finds the last sequence of elements in a certain range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::find_first_of",
    "link": "cpp/algorithm/find_first_of",
    "marks": {},
    "description": "searches for any one of a set of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::find_if",
    "link": "cpp/algorithm/find",
    "marks": {},
    "description": "finds the first element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::find_if_not",
    "link": "cpp/algorithm/find",
    "marks": {
      "since": "c++11"
    },
    "description": "finds the first element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::fisher_f_distribution",
    "link": "cpp/numeric/random/fisher_f_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a Fisher's F-distribution"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fixed",
    "link": "cpp/io/manip/fixed",
    "marks": {},
    "description": "changes formatting used for floating-point I/O"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::flat_map",
    "link": "cpp/container/flat_map",
    "marks": {
      "since": "c++23"
    },
    "description": "adapts two containers to provide a collection of key-value pairs, sorted by unique keys"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::flat_multimap",
    "link": "cpp/container/flat_multimap",
    "marks": {
      "since": "c++23"
    },
    "description": "adapts two containers to provide a collection of key-value pairs, sorted by keys"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::flat_multiset",
    "link": "cpp/container/flat_multiset",
    "marks": {
      "since": "c++23"
    },
    "description": "adapts a container to provide a collection of keys, sorted by keys"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::flat_set",
    "link": "cpp/container/flat_set",
    "marks": {
      "since": "c++23"
    },
    "description": "adapts a container to provide a collection of unique keys, sorted by keys"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::float_denorm_style",
    "link": "cpp/types/numeric_limits/float_denorm_style",
    "marks": {},
    "description": "indicates floating-point denormalization modes"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::float_round_style",
    "link": "cpp/types/numeric_limits/float_round_style",
    "marks": {},
    "description": "indicates floating-point rounding modes"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::float_t",
    "link": "cpp/numeric/math",
    "marks": {
      "since": "c++11"
    },
    "description": "most efficient floating-point type at least as wide as float"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::float16_t",
    "link": "cpp/types/floating-point",
    "marks": {
      "since": "c++23"
    },
    "description": "binary floating-point type with width of exactly 16, 32, 64, and 128 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::float32_t",
    "link": "cpp/types/floating-point",
    "marks": {
      "since": "c++23"
    },
    "description": "binary floating-point type with width of exactly 16, 32, 64, and 128 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::float64_t",
    "link": "cpp/types/floating-point",
    "marks": {
      "since": "c++23"
    },
    "description": "binary floating-point type with width of exactly 16, 32, 64, and 128 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::float128_t",
    "link": "cpp/types/floating-point",
    "marks": {
      "since": "c++23"
    },
    "description": "binary floating-point type with width of exactly 16, 32, 64, and 128 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::floating_point",
    "link": "cpp/concepts/floating_point",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is a floating-point type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::floor",
    "link": "cpp/numeric/math/floor",
    "marks": {},
    "description": "nearest integer not greater than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::floorf",
    "link": "cpp/numeric/math/floor",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer not greater than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::floorl",
    "link": "cpp/numeric/math/floor",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer not greater than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::flush",
    "link": "cpp/io/manip/flush",
    "marks": {},
    "description": "flushes the output stream"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::flush_emit",
    "link": "cpp/io/manip/flush_emit",
    "marks": {
      "since": "c++20"
    },
    "description": "flushes a stream and emits the content if it is using a basic_syncbuf"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fma",
    "link": "cpp/numeric/math/fma",
    "marks": {
      "since": "c++11"
    },
    "description": "fused multiply-add operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmaf",
    "link": "cpp/numeric/math/fma",
    "marks": {
      "since": "c++11"
    },
    "description": "fused multiply-add operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmal",
    "link": "cpp/numeric/math/fma",
    "marks": {
      "since": "c++11"
    },
    "description": "fused multiply-add operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmax",
    "link": "cpp/numeric/math/fmax",
    "marks": {
      "since": "c++11"
    },
    "description": "larger of two floating-point values"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmaxf",
    "link": "cpp/numeric/math/fmax",
    "marks": {
      "since": "c++11"
    },
    "description": "larger of two floating-point values"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmaxl",
    "link": "cpp/numeric/math/fmax",
    "marks": {
      "since": "c++11"
    },
    "description": "larger of two floating-point values"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmin",
    "link": "cpp/numeric/math/fmin",
    "marks": {
      "since": "c++11"
    },
    "description": "smaller of two floating point values"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fminf",
    "link": "cpp/numeric/math/fmin",
    "marks": {
      "since": "c++11"
    },
    "description": "smaller of two floating point values"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fminl",
    "link": "cpp/numeric/math/fmin",
    "marks": {
      "since": "c++11"
    },
    "description": "smaller of two floating point values"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmod",
    "link": "cpp/numeric/math/fmod",
    "marks": {},
    "description": "remainder of the floating point division operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmodf",
    "link": "cpp/numeric/math/fmod",
    "marks": {
      "since": "c++11"
    },
    "description": "remainder of the floating point division operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fmodl",
    "link": "cpp/numeric/math/fmod",
    "marks": {
      "since": "c++11"
    },
    "description": "remainder of the floating point division operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fopen",
    "link": "cpp/io/c/fopen",
    "marks": {},
    "description": "opens a file"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::for_each",
    "link": "cpp/algorithm/for_each",
    "marks": {},
    "description": "applies a function to a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::for_each_n",
    "link": "cpp/algorithm/for_each_n",
    "marks": {
      "since": "c++17"
    },
    "description": "applies a function object to the first N elements of a sequence"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::format",
    "link": "cpp/utility/format/format",
    "marks": {
      "since": "c++20"
    },
    "description": "stores formatted representation of the arguments in a new string"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::format_args",
    "link": "cpp/utility/format/basic_format_args",
    "marks": {
      "since": "c++20"
    },
    "description": "class that provides access to all formatting arguments"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::format_context",
    "link": "cpp/utility/format/basic_format_context",
    "marks": {
      "since": "c++20"
    },
    "description": "formatting state, including all formatting arguments and the output iterator"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::format_error",
    "link": "cpp/utility/format/format_error",
    "marks": {
      "since": "c++20"
    },
    "description": "exception type thrown on formatting errors"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::format_kind",
    "link": "cpp/utility/format/format_kind",
    "marks": {
      "since": "c++23"
    },
    "description": "selects a suited std::range_format for a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::format_parse_context",
    "link": "cpp/utility/format/basic_format_parse_context",
    "marks": {
      "since": "c++20"
    },
    "description": "formatting string parser state"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::format_string",
    "link": "cpp/utility/format/basic_format_string",
    "marks": {
      "since": "c++20"
    },
    "description": "class template that performs compile-time format string checks at construction time"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::format_to",
    "link": "cpp/utility/format/format_to",
    "marks": {
      "since": "c++20"
    },
    "description": "writes out formatted representation of its arguments through an output iterator"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::format_to_n",
    "link": "cpp/utility/format/format_to_n",
    "marks": {
      "since": "c++20"
    },
    "description": "writes out formatted representation of its arguments through an output iterator, not exceeding specified size"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::format_to_n_result",
    "link": "cpp/utility/format/format_to_n",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::format_to_n"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::formattable",
    "link": "cpp/utility/format/formattable",
    "marks": {
      "since": "c++23"
    },
    "description": "specifies that a type is formattable, that is, it specializes std::formatter and provides member functions parse and format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::formatted_size",
    "link": "cpp/utility/format/formatted_size",
    "marks": {
      "since": "c++20"
    },
    "description": "determines the number of characters necessary to store the formatted representation of its arguments"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::formatter",
    "link": "cpp/utility/format/formatter",
    "marks": {
      "since": "c++20"
    },
    "description": "defines formatting rules for a given type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::forward",
    "link": "cpp/utility/forward",
    "marks": {
      "since": "c++11"
    },
    "description": "forwards a function argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::forward_as_tuple",
    "link": "cpp/utility/tuple/forward_as_tuple",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a tuple of forwarding references"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::forward_iterator",
    "link": "cpp/iterator/forward_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an input_iterator is a forward iterator, supporting equality comparison and multi-pass"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::forward_iterator_tag",
    "link": "cpp/iterator/iterator_tags",
    "marks": {},
    "description": "empty class types used to indicate iterator categories"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::forward_like",
    "link": "cpp/utility/forward_like",
    "marks": {
      "since": "c++23"
    },
    "description": "forwards a function argument as if casting it to the value category and constness of the expression of specified type template argument"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::forward_list",
    "link": "cpp/container/forward_list",
    "marks": {
      "since": "c++11"
    },
    "description": "singly-linked list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fpclassify",
    "link": "cpp/numeric/math/fpclassify",
    "marks": {
      "since": "c++11"
    },
    "description": "categorizes the given floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::fpos",
    "link": "cpp/io/fpos",
    "marks": {},
    "description": "represents absolute position in a stream or a file"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::fpos_t",
    "link": "cpp/io/c/fpos_t",
    "marks": {},
    "description": "complete non-array object type, capable of uniquely specifying a position in a file, including its multibyte parse state"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fprintf",
    "link": "cpp/io/c/fprintf",
    "marks": {},
    "description": "prints formatted output to stdout, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fputc",
    "link": "cpp/io/c/fputc",
    "marks": {},
    "description": "writes a character to a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fputs",
    "link": "cpp/io/c/fputs",
    "marks": {},
    "description": "writes a character string to a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fputwc",
    "link": "cpp/io/c/fputwc",
    "marks": {},
    "description": "writes a wide character to a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fputws",
    "link": "cpp/io/c/fputws",
    "marks": {},
    "description": "writes a wide string to a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fread",
    "link": "cpp/io/c/fread",
    "marks": {},
    "description": "reads from a file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::free",
    "link": "cpp/memory/c/free",
    "marks": {},
    "description": "deallocates previously allocated memory"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::freopen",
    "link": "cpp/io/c/freopen",
    "marks": {},
    "description": "open an existing stream with a different name"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::frexp",
    "link": "cpp/numeric/math/frexp",
    "marks": {},
    "description": "decomposes a number into significand and base-2 exponent"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::frexpf",
    "link": "cpp/numeric/math/frexp",
    "marks": {
      "since": "c++11"
    },
    "description": "decomposes a number into significand and base-2 exponent"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::frexpl",
    "link": "cpp/numeric/math/frexp",
    "marks": {
      "since": "c++11"
    },
    "description": "decomposes a number into significand and base-2 exponent"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::from_chars",
    "link": "cpp/utility/from_chars",
    "marks": {
      "since": "c++17"
    },
    "description": "converts a character sequence to an integer or floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::from_chars_result",
    "link": "cpp/utility/from_chars",
    "marks": {
      "since": "c++17"
    },
    "description": "the return type of std::from_chars"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::from_range",
    "link": "cpp/ranges/from_range",
    "marks": {
      "since": "c++23"
    },
    "description": "from-range construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::from_range_t",
    "link": "cpp/ranges/from_range",
    "marks": {
      "since": "c++23"
    },
    "description": "from-range construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::front_insert_iterator",
    "link": "cpp/iterator/front_insert_iterator",
    "marks": {},
    "description": "iterator adaptor for insertion at the front of a container"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::front_inserter",
    "link": "cpp/iterator/front_inserter",
    "marks": {},
    "description": "creates a std::front_insert_iterator of type inferred from the argument"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fscanf",
    "link": "cpp/io/c/fscanf",
    "marks": {},
    "description": "reads formatted input from stdin, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fseek",
    "link": "cpp/io/c/fseek",
    "marks": {},
    "description": "moves the file position indicator to a specific location in a file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fsetpos",
    "link": "cpp/io/c/fsetpos",
    "marks": {},
    "description": "moves the file position indicator to a specific location in a file"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::fstream",
    "link": "cpp/io/basic_fstream",
    "marks": {},
    "description": "std::basic_fstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ftell",
    "link": "cpp/io/c/ftell",
    "marks": {},
    "description": "returns the current file position indicator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::function",
    "link": "cpp/utility/functional/function",
    "marks": {
      "since": "c++11"
    },
    "description": "copyable wrapper of any copy constructible callable object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::function_ref",
    "link": "cpp/utility/functional/function_ref",
    "marks": {
      "since": "c++26"
    },
    "description": "non-owning wrapper of any callable object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::future",
    "link": "cpp/thread/future",
    "marks": {
      "since": "c++11"
    },
    "description": "waits for a value that is set asynchronously"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::future_category",
    "link": "cpp/thread/future_category",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies the future error category"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::future_errc",
    "link": "cpp/thread/future_errc",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies the future error codes"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::future_error",
    "link": "cpp/thread/future_error",
    "marks": {
      "since": "c++11"
    },
    "description": "reports an error related to futures or promises"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::future_status",
    "link": "cpp/thread/future_status",
    "marks": {
      "since": "c++11"
    },
    "description": "specifies the results of timed waits performed on std::future and std::shared_future"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fwide",
    "link": "cpp/io/c/fwide",
    "marks": {},
    "description": "switches a file stream between wide character I/O and narrow character I/O"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fwprintf",
    "link": "cpp/io/c/fwprintf",
    "marks": {},
    "description": "prints formatted wide character output to stdout, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fwrite",
    "link": "cpp/io/c/fwrite",
    "marks": {},
    "description": "writes to a file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::fwscanf",
    "link": "cpp/io/c/fwscanf",
    "marks": {},
    "description": "reads formatted wide character input from stdin, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::gamma_distribution",
    "link": "cpp/numeric/random/gamma_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a gamma distribution"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::gcd",
    "link": "cpp/numeric/gcd",
    "marks": {
      "since": "c++17"
    },
    "description": "computes the greatest common divisor of two integers"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::generate",
    "link": "cpp/algorithm/generate",
    "marks": {},
    "description": "assigns the results of successive function calls to every element in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::generate_canonical",
    "link": "cpp/numeric/random/generate_canonical",
    "marks": {
      "since": "c++11"
    },
    "description": "evenly distributes real values of given precision across [​0​, 1)"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::generate_n",
    "link": "cpp/algorithm/generate_n",
    "marks": {},
    "description": "assigns the results of successive function calls to N elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::generator",
    "link": "cpp/coroutine/generator",
    "marks": {
      "since": "c++23"
    },
    "description": "A view that represents synchronous coroutine generator"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::generic_category",
    "link": "cpp/error/generic_category",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies the generic error category"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::geometric_distribution",
    "link": "cpp/numeric/random/geometric_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces integer values on a geometric distribution"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get",
    "link": "cpp/container/array/get",
    "marks": {
      "since": "c++11"
    },
    "note": "std::array",
    "description": "accesses an element of an array"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get",
    "link": "cpp/utility/pair/get",
    "marks": {
      "since": "c++11"
    },
    "note": "std::pair",
    "description": "accesses an element of a pair"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get",
    "link": "cpp/ranges/subrange/get",
    "marks": {
      "since": "c++20"
    },
    "note": "std::ranges::subrange",
    "description": "obtains iterator or sentinel from a std::ranges::subrange"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get",
    "link": "cpp/utility/tuple/get",
    "marks": {
      "since": "c++11"
    },
    "note": "std::tuple",
    "description": "tuple accesses specified element"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get",
    "link": "cpp/utility/variant/get",
    "marks": {
      "since": "c++17"
    },
    "note": "std::variant",
    "description": "reads the value of the variant given the index or the type (if the type is unique), throws on error"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get_deleter",
    "link": "cpp/memory/shared_ptr/get_deleter",
    "marks": {
      "since": "c++11"
    },
    "description": "returns the deleter of specified type, if owned"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get_if",
    "link": "cpp/utility/variant/get_if",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains a pointer to the value of a pointed-to variant given the index or the type (if unique), returns null on error"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get_money",
    "link": "cpp/io/manip/get_money",
    "marks": {
      "since": "c++11"
    },
    "description": "parses a monetary value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::get_new_handler",
    "link": "cpp/memory/new/get_new_handler",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the current new handler"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::get_terminate",
    "link": "cpp/error/get_terminate",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the current terminate_handler"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get_time",
    "link": "cpp/io/manip/get_time",
    "marks": {
      "since": "c++11"
    },
    "description": "parses a date/time value of specified format"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::getline",
    "link": "cpp/string/basic_string/getline",
    "marks": {},
    "description": "read data from an I/O stream into a string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::getc",
    "link": "cpp/io/c/fgetc",
    "marks": {},
    "description": "gets a character from a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::getchar",
    "link": "cpp/io/c/getchar",
    "marks": {},
    "description": "reads a character from stdin"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::getenv",
    "link": "cpp/utility/program/getenv",
    "marks": {},
    "description": "access to the list of environment variables"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::getwc",
    "link": "cpp/io/c/fgetwc",
    "marks": {},
    "description": "gets a wide character from a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::getwchar",
    "link": "cpp/io/c/getwchar",
    "marks": {},
    "description": "reads a wide character from stdin"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::giga",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000000000, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::gmtime",
    "link": "cpp/chrono/c/gmtime",
    "marks": {},
    "description": "converts time since epoch to calendar time expressed as Universal Coordinated Time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::greater",
    "link": "cpp/utility/functional/greater",
    "marks": {},
    "description": "function object implementing x > y"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::greater_equal",
    "link": "cpp/utility/functional/greater_equal",
    "marks": {},
    "description": "function object implementing x >= y"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::gslice",
    "link": "cpp/numeric/valarray/gslice",
    "marks": {},
    "description": "generalized slice of a valarray: starting index, set of lengths, set of strides"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::gslice_array",
    "link": "cpp/numeric/valarray/gslice_array",
    "marks": {},
    "description": "proxy to a subset of a valarray after applying a gslice"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::hardware_constructive_interference_size",
    "link": "cpp/thread/hardware_destructive_interference_size",
    "marks": {
      "since": "c++17"
    },
    "description": "min offset to avoid false sharing\nmax offset to promote true sharing"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::hardware_destructive_interference_size",
    "link": "cpp/thread/hardware_destructive_interference_size",
    "marks": {
      "since": "c++17"
    },
    "description": "min offset to avoid false sharing\nmax offset to promote true sharing"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::has_facet",
    "link": "cpp/locale/has_facet",
    "marks": {},
    "description": "checks if a locale implements a specific facet"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::has_single_bit",
    "link": "cpp/numeric/has_single_bit",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a number is an integral power of 2"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::has_unique_object_representations",
    "link": "cpp/types/has_unique_object_representations",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if every bit in the type's object representation contributes to its value"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::has_unique_object_representations_v",
    "link": "cpp/types/has_unique_object_representations",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::has_unique_object_representations"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::has_virtual_destructor",
    "link": "cpp/types/has_virtual_destructor",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a virtual destructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::has_virtual_destructor_v",
    "link": "cpp/types/has_virtual_destructor",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::has_virtual_destructor"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::hash",
    "link": "cpp/utility/hash",
    "marks": {
      "since": "c++11"
    },
    "description": "hash function object"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::hazard_pointer",
    "link": "cpp/thread/hazard_pointer",
    "marks": {
      "since": "c++26"
    },
    "description": "single-writer multi-reader pointer that can be owned by at most one thread at any point of time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::hazard_pointer_obj_base",
    "link": "cpp/thread/hazard_pointer_obj_base",
    "marks": {
      "since": "c++26"
    },
    "description": "allows an object to be hazard-protectable"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::hecto",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<100, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hermite",
    "link": "cpp/numeric/special_functions/hermite",
    "marks": {
      "since": "c++17"
    },
    "description": "Hermite polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hermitef",
    "link": "cpp/numeric/special_functions/hermite",
    "marks": {
      "since": "c++17"
    },
    "description": "Hermite polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hermitel",
    "link": "cpp/numeric/special_functions/hermite",
    "marks": {
      "since": "c++17"
    },
    "description": "Hermite polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hex",
    "link": "cpp/io/manip/hex",
    "marks": {},
    "description": "changes the base used for integer I/O"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hexfloat",
    "link": "cpp/io/manip/fixed",
    "marks": {
      "since": "c++11"
    },
    "description": "changes formatting used for floating-point I/O"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::holds_alternative",
    "link": "cpp/utility/variant/holds_alternative",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if a variant currently holds a given type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hypot",
    "link": "cpp/numeric/math/hypot",
    "marks": {
      "since": "c++11"
    },
    "description": "computes square root of the sum of the squares of two or three(since C++17) given numbers (√x2\n+y2\n), (√x2\n+y2\n+z2\n)(since C++17)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hypotf",
    "link": "cpp/numeric/math/hypot",
    "marks": {
      "since": "c++11"
    },
    "description": "computes square root of the sum of the squares of two or three(since C++17) given numbers (√x2\n+y2\n), (√x2\n+y2\n+z2\n)(since C++17)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::hypotl",
    "link": "cpp/numeric/math/hypot",
    "marks": {
      "since": "c++11"
    },
    "description": "computes square root of the sum of the squares of two or three(since C++17) given numbers (√x2\n+y2\n), (√x2\n+y2\n+z2\n)(since C++17)"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::identity",
    "link": "cpp/utility/functional/identity",
    "marks": {
      "since": "c++20"
    },
    "description": "function object that returns its argument unchanged"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ifstream",
    "link": "cpp/io/basic_ifstream",
    "marks": {},
    "description": "std::basic_ifstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ignore",
    "link": "cpp/utility/tuple/ignore",
    "marks": {
      "since": "c++11"
    },
    "description": "placeholder to skip an element when unpacking a tuple using tie"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ilogb",
    "link": "cpp/numeric/math/ilogb",
    "marks": {
      "since": "c++11"
    },
    "description": "extracts exponent of the number"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ilogbf",
    "link": "cpp/numeric/math/ilogb",
    "marks": {
      "since": "c++11"
    },
    "description": "extracts exponent of the number"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ilogbl",
    "link": "cpp/numeric/math/ilogb",
    "marks": {
      "since": "c++11"
    },
    "description": "extracts exponent of the number"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::imag",
    "link": "cpp/numeric/complex/imag2",
    "marks": {},
    "description": "returns the imaginary part"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::imaxabs",
    "link": "cpp/numeric/math/abs",
    "marks": {
      "since": "c++11"
    },
    "description": "computes absolute value of an integral value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::imaxdiv",
    "link": "cpp/numeric/math/div",
    "marks": {
      "since": "c++11"
    },
    "description": "computes quotient and remainder of integer division"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::imaxdiv_t",
    "link": "cpp/numeric/math/div",
    "marks": {
      "since": "c++11"
    },
    "description": "structure type, returned by std::imaxdiv"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::in_place",
    "link": "cpp/utility/in_place",
    "marks": {
      "since": "c++17"
    },
    "description": "in-place construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::in_place_index",
    "link": "cpp/utility/in_place",
    "marks": {
      "since": "c++17"
    },
    "description": "in-place construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::in_place_index_t",
    "link": "cpp/utility/in_place",
    "marks": {
      "since": "c++17"
    },
    "description": "in-place construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::in_place_t",
    "link": "cpp/utility/in_place",
    "marks": {
      "since": "c++17"
    },
    "description": "in-place construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::in_place_type",
    "link": "cpp/utility/in_place",
    "marks": {
      "since": "c++17"
    },
    "description": "in-place construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::in_place_type_t",
    "link": "cpp/utility/in_place",
    "marks": {
      "since": "c++17"
    },
    "description": "in-place construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::in_range",
    "link": "cpp/utility/in_range",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if an integer value is in the range of a given integer type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::includes",
    "link": "cpp/algorithm/includes",
    "marks": {},
    "description": "returns true if one sequence is a subsequence of another"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::inclusive_scan",
    "link": "cpp/algorithm/inclusive_scan",
    "marks": {
      "since": "c++17"
    },
    "description": "similar to std::partial_sum, includes the ith input element in the ith sum"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::incrementable",
    "link": "cpp/iterator/incrementable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that the increment operation on a weakly_incrementable type is equality-preserving and that the type is equality_comparable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::incrementable_traits",
    "link": "cpp/iterator/incrementable_traits",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the difference type of a weakly_incrementable type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::independent_bits_engine",
    "link": "cpp/numeric/random/independent_bits_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "packs the output of a random number engine into blocks of a specified number of bits"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::index_sequence",
    "link": "cpp/utility/integer_sequence",
    "marks": {
      "since": "c++14"
    },
    "description": "std::integer_sequence<std::size_t, Ints...>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::index_sequence_for",
    "link": "cpp/utility/integer_sequence",
    "marks": {
      "since": "c++14"
    },
    "description": "std::make_index_sequence<sizeof...(Ts)>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::indirect_array",
    "link": "cpp/numeric/valarray/indirect_array",
    "marks": {},
    "description": "proxy to a subset of a valarray after applying indirect operator[]"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirect_binary_predicate",
    "link": "cpp/iterator/indirect_binary_predicate",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type, when invoked with the result of dereferencing two indirectly_readable types, satisfies predicate"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirect_equivalence_relation",
    "link": "cpp/iterator/indirect_equivalence_relation",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type, when invoked with the result of dereferencing two indirectly_readable types, satisfies equivalence_relation"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::indirect_result_t",
    "link": "cpp/iterator/indirect_result_t",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the result of invoking a callable object on the result of dereferencing some set of indirectly_readable types"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirect_strict_weak_order",
    "link": "cpp/iterator/indirect_strict_weak_order",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type, when invoked with the result of dereferencing two indirectly_readable types, satisfies strict_weak_order"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirect_unary_predicate",
    "link": "cpp/iterator/indirect_unary_predicate",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type, when invoked with the result of dereferencing an indirectly_readable type, satisfies predicate"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_comparable",
    "link": "cpp/iterator/indirectly_comparable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that the values referenced by two indirectly_readable types can be compared"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_copyable",
    "link": "cpp/iterator/indirectly_copyable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that values may be copied from an indirectly_readable type to an indirectly_writable type"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_copyable_storable",
    "link": "cpp/iterator/indirectly_copyable_storable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that values may be copied from an indirectly_readable type to an indirectly_writable type and that the copy may be performed via an intermediate object"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_movable",
    "link": "cpp/iterator/indirectly_movable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that values may be moved from an indirectly_readable type to an indirectly_writable type"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_movable_storable",
    "link": "cpp/iterator/indirectly_movable_storable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that values may be moved from an indirectly_readable type to an indirectly_writable type and that the move may be performed via an intermediate object"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_readable",
    "link": "cpp/iterator/indirectly_readable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is indirectly readable by applying operator *"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::indirectly_readable_traits",
    "link": "cpp/iterator/indirectly_readable_traits",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the value type of an indirectly_readable type"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_regular_unary_invocable",
    "link": "cpp/iterator/indirectly_unary_invocable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type can be invoked with the result of dereferencing an indirectly_readable type"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_swappable",
    "link": "cpp/iterator/indirectly_swappable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that the values referenced by two indirectly_readable types can be swapped"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_unary_invocable",
    "link": "cpp/iterator/indirectly_unary_invocable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type can be invoked with the result of dereferencing an indirectly_readable type"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::indirectly_writable",
    "link": "cpp/iterator/indirectly_writable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a value can be written to an iterator's referenced object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::initializer_list",
    "link": "cpp/utility/initializer_list",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a temporary array in list-initialization and then references it"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::inner_product",
    "link": "cpp/algorithm/inner_product",
    "marks": {},
    "description": "computes the inner product of two ranges of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::inout_ptr",
    "link": "cpp/memory/inout_ptr_t/inout_ptr",
    "marks": {
      "since": "c++23"
    },
    "description": "creates an inout_ptr_t with an associated smart pointer and resetting arguments"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::inout_ptr_t",
    "link": "cpp/memory/inout_ptr_t",
    "marks": {
      "since": "c++23"
    },
    "description": "interoperates with foreign pointer setters, obtains the initial pointer value from a smart pointer, and resets it on destruction"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::inplace_merge",
    "link": "cpp/algorithm/inplace_merge",
    "marks": {},
    "description": "merges two ordered ranges in-place"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::inplace_vector",
    "link": "cpp/container/inplace_vector",
    "marks": {
      "since": "c++26"
    },
    "description": "dynamically-resizable inplace contiguous array"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::input_iterator",
    "link": "cpp/iterator/input_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is an input iterator, that is, its referenced values can be read and it can be both pre- and post-incremented"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::input_iterator_tag",
    "link": "cpp/iterator/iterator_tags",
    "marks": {},
    "description": "empty class types used to indicate iterator categories"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::input_or_output_iterator",
    "link": "cpp/iterator/input_or_output_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that objects of a type can be incremented and dereferenced"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::insert_iterator",
    "link": "cpp/iterator/insert_iterator",
    "marks": {},
    "description": "iterator adaptor for insertion into a container"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::inserter",
    "link": "cpp/iterator/inserter",
    "marks": {},
    "description": "creates a std::insert_iterator of type inferred from the argument"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_fast16_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_fast32_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_fast64_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_fast8_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_least16_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_least32_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_least64_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int_least8_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest signed integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int16_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "signed integer type with width of exactly 8, 16, 32 and 64 bits respectively\nwith no padding bits and using 2's complement for negative values\n(provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int32_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "signed integer type with width of exactly 8, 16, 32 and 64 bits respectively\nwith no padding bits and using 2's complement for negative values\n(provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int64_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "signed integer type with width of exactly 8, 16, 32 and 64 bits respectively\nwith no padding bits and using 2's complement for negative values\n(provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::int8_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "signed integer type with width of exactly 8, 16, 32 and 64 bits respectively\nwith no padding bits and using 2's complement for negative values\n(provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::integer_sequence",
    "link": "cpp/utility/integer_sequence",
    "marks": {
      "since": "c++14"
    },
    "description": "implements compile-time sequence of integers"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::integral",
    "link": "cpp/concepts/integral",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is an integral type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::integral_constant",
    "link": "cpp/types/integral_constant",
    "marks": {
      "since": "c++11"
    },
    "description": "compile-time constant of specified type with specified value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::internal",
    "link": "cpp/io/manip/left",
    "marks": {},
    "description": "sets the placement of fill characters"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::intmax_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum-width signed integer type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::intptr_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "signed integer type capable of holding a pointer to void"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::invalid_argument",
    "link": "cpp/error/invalid_argument",
    "marks": {},
    "description": "exception class to report invalid arguments"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::invocable",
    "link": "cpp/concepts/invocable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type can be invoked with a given set of argument types"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::invoke",
    "link": "cpp/utility/functional/invoke",
    "marks": {
      "since": "c++17"
    },
    "description": "invokes any Callable object with given arguments and possibility to specify return type(since C++23)"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::invoke_r",
    "link": "cpp/utility/functional/invoke",
    "marks": {
      "since": "c++23"
    },
    "description": "invokes any Callable object with given arguments and possibility to specify return type(since C++23)"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::invoke_result",
    "link": "cpp/types/result_of",
    "marks": {
      "since": "c++17"
    },
    "description": "deduces the result type of invoking a callable object with a set of arguments"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::invoke_result_t",
    "link": "cpp/types/result_of",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper type of std::invoke_result"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::io_errc",
    "link": "cpp/io/io_errc",
    "marks": {
      "since": "c++11"
    },
    "description": "the IO stream error codes"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ios",
    "link": "cpp/io/basic_ios",
    "marks": {},
    "description": "std::basic_ios<char>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ios_base",
    "link": "cpp/io/ios_base",
    "marks": {},
    "description": "manages formatting flags and input/output exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::iostream",
    "link": "cpp/io/basic_iostream",
    "marks": {},
    "description": "std::basic_iostream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iostream_category",
    "link": "cpp/io/iostream_category",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies the iostream error category"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::iota",
    "link": "cpp/algorithm/iota",
    "marks": {
      "since": "c++11"
    },
    "description": "fills a range with successive increments of the starting value"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_abstract",
    "link": "cpp/types/is_abstract",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an abstract class type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_abstract_v",
    "link": "cpp/types/is_abstract",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_abstract"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_aggregate",
    "link": "cpp/types/is_aggregate",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if a type is an aggregate type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_aggregate_v",
    "link": "cpp/types/is_aggregate",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_aggregate"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_arithmetic",
    "link": "cpp/types/is_arithmetic",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an arithmetic type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_arithmetic_v",
    "link": "cpp/types/is_arithmetic",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_arithmetic"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_array",
    "link": "cpp/types/is_array",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an array type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_array_v",
    "link": "cpp/types/is_array",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_array"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_assignable",
    "link": "cpp/types/is_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has an assignment operator for a specific argument"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_assignable_v",
    "link": "cpp/types/is_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_base_of",
    "link": "cpp/types/is_base_of",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a base of the other type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_base_of_v",
    "link": "cpp/types/is_base_of",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_base_of"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_bind_expression",
    "link": "cpp/utility/functional/is_bind_expression",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates that an object is std::bind expression or can be used as one"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_bind_expression_v",
    "link": "cpp/utility/functional/is_bind_expression",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_bind_expression"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_bounded_array",
    "link": "cpp/types/is_bounded_array",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a type is an array type of known bound"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_bounded_array_v",
    "link": "cpp/types/is_bounded_array",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper variable template of std::is_bounded_array"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_class",
    "link": "cpp/types/is_class",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a non-union class type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_class_v",
    "link": "cpp/types/is_class",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_class"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_compound",
    "link": "cpp/types/is_compound",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a compound type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_compound_v",
    "link": "cpp/types/is_compound",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_compound"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_const",
    "link": "cpp/types/is_const",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is const-qualified"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_const_v",
    "link": "cpp/types/is_const",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_const"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_constant_evaluated",
    "link": "cpp/types/is_constant_evaluated",
    "marks": {
      "since": "c++20"
    },
    "description": "detects whether the call occurs within a constant-evaluated context"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_constructible",
    "link": "cpp/types/is_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a constructor for specific arguments"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_constructible_v",
    "link": "cpp/types/is_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_convertible",
    "link": "cpp/types/is_convertible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type can be converted to the other type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_convertible_v",
    "link": "cpp/types/is_convertible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_convertible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_copy_assignable",
    "link": "cpp/types/is_copy_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a copy assignment operator"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_copy_assignable_v",
    "link": "cpp/types/is_copy_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_copy_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_copy_constructible",
    "link": "cpp/types/is_copy_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a copy constructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_copy_constructible_v",
    "link": "cpp/types/is_copy_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_copy_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_corresponding_member",
    "link": "cpp/types/is_corresponding_member",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if two specified members correspond to each other in the common initial subsequence of two specified types"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_debugger_present",
    "link": "cpp/utility/is_debugger_present",
    "marks": {
      "since": "c++26"
    },
    "description": "checks whether a program is running under the control of a debugger"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_default_constructible",
    "link": "cpp/types/is_default_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a default constructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_default_constructible_v",
    "link": "cpp/types/is_default_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_default_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_destructible",
    "link": "cpp/types/is_destructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a non-deleted destructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_destructible_v",
    "link": "cpp/types/is_destructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_destructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_empty",
    "link": "cpp/types/is_empty",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a class (but not union) type and has no non-static data members"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_empty_v",
    "link": "cpp/types/is_empty",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_empty"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_enum",
    "link": "cpp/types/is_enum",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an enumeration type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_enum_v",
    "link": "cpp/types/is_enum",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_enum"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_eq",
    "link": "cpp/utility/compare/named_comparison_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "named comparison functions"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_error_code_enum",
    "link": "cpp/error/error_code/is_error_code_enum",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies a class as an error_code enumeration"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_error_condition_enum",
    "link": "cpp/error/error_condition/is_error_condition_enum",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies an enumeration as an std::error_condition"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_error_condition_enum_v",
    "link": "cpp/error/error_condition/is_error_condition_enum",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_error_condition_enum"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_execution_policy",
    "link": "cpp/algorithm/is_execution_policy",
    "marks": {
      "since": "c++17"
    },
    "description": "test whether a class represents an execution policy"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_execution_policy_v",
    "link": "cpp/algorithm/is_execution_policy",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_execution_policy"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_final",
    "link": "cpp/types/is_final",
    "marks": {
      "since": "c++14"
    },
    "description": "checks if a type is a final class type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_final_v",
    "link": "cpp/types/is_final",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_final"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_floating_point",
    "link": "cpp/types/is_floating_point",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a floating-point type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_floating_point_v",
    "link": "cpp/types/is_floating_point",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_floating_point"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_function",
    "link": "cpp/types/is_function",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a function type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_function_v",
    "link": "cpp/types/is_function",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_function"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_fundamental",
    "link": "cpp/types/is_fundamental",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a fundamental type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_fundamental_v",
    "link": "cpp/types/is_fundamental",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_fundamental"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_gt",
    "link": "cpp/utility/compare/named_comparison_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "named comparison functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_gteq",
    "link": "cpp/utility/compare/named_comparison_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "named comparison functions"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_heap",
    "link": "cpp/algorithm/is_heap",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the given range is a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_heap_until",
    "link": "cpp/algorithm/is_heap_until",
    "marks": {
      "since": "c++11"
    },
    "description": "finds the largest subrange that is a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_implicit_lifetime",
    "link": "cpp/types/is_implicit_lifetime",
    "marks": {
      "since": "c++23"
    },
    "description": "checks if a type is an implicit-lifetime type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_integral",
    "link": "cpp/types/is_integral",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an integral type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_integral_v",
    "link": "cpp/types/is_integral",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_integral"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_invocable",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if a type can be invoked (as if by std::invoke) with the given argument types"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_invocable_r",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if a type can be invoked (as if by std::invoke) with the given argument types"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_invocable_r_v",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_invocable_r"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_invocable_v",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_invocable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_layout_compatible",
    "link": "cpp/types/is_layout_compatible",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if two types are layout-compatible"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_layout_compatible_v",
    "link": "cpp/types/is_layout_compatible",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper variable template of std::is_layout_compatible"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_lt",
    "link": "cpp/utility/compare/named_comparison_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "named comparison functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_lteq",
    "link": "cpp/utility/compare/named_comparison_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "named comparison functions"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_lvalue_reference",
    "link": "cpp/types/is_lvalue_reference",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an lvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_lvalue_reference_v",
    "link": "cpp/types/is_lvalue_reference",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_lvalue_reference"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_member_function_pointer",
    "link": "cpp/types/is_member_function_pointer",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a pointer to a non-static member function"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_member_function_pointer_v",
    "link": "cpp/types/is_member_function_pointer",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_member_function_pointer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_member_object_pointer",
    "link": "cpp/types/is_member_object_pointer",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a pointer to a non-static member object"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_member_object_pointer_v",
    "link": "cpp/types/is_member_object_pointer",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_member_object_pointer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_member_pointer",
    "link": "cpp/types/is_member_pointer",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a pointer to a non-static member function or object"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_member_pointer_v",
    "link": "cpp/types/is_member_pointer",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_member_pointer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_move_assignable",
    "link": "cpp/types/is_move_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a move assignment operator"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_move_assignable_v",
    "link": "cpp/types/is_move_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_move_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_move_constructible",
    "link": "cpp/types/is_move_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type can be constructed from an rvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_move_constructible_v",
    "link": "cpp/types/is_move_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_move_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_neq",
    "link": "cpp/utility/compare/named_comparison_functions",
    "marks": {
      "since": "c++20"
    },
    "description": "named comparison functions"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_assignable",
    "link": "cpp/types/is_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has an assignment operator for a specific argument"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_assignable_v",
    "link": "cpp/types/is_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_constructible",
    "link": "cpp/types/is_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a constructor for specific arguments"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_constructible_v",
    "link": "cpp/types/is_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_convertible",
    "link": "cpp/types/is_convertible",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a type can be converted to the other type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_convertible_v",
    "link": "cpp/types/is_convertible",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper variable template of std::is_nothrow_convertible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_copy_assignable",
    "link": "cpp/types/is_copy_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a copy assignment operator"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_copy_assignable_v",
    "link": "cpp/types/is_copy_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_copy_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_copy_constructible",
    "link": "cpp/types/is_copy_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a copy constructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_copy_constructible_v",
    "link": "cpp/types/is_copy_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_copy_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_default_constructible",
    "link": "cpp/types/is_default_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a default constructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_default_constructible_v",
    "link": "cpp/types/is_default_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_default_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_destructible",
    "link": "cpp/types/is_destructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a non-deleted destructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_destructible_v",
    "link": "cpp/types/is_destructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_destructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_invocable",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if a type can be invoked (as if by std::invoke) with the given argument types"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_invocable_r",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if a type can be invoked (as if by std::invoke) with the given argument types"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_invocable_r_v",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_invocable_r"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_invocable_v",
    "link": "cpp/types/is_invocable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_invocable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_move_assignable",
    "link": "cpp/types/is_move_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a move assignment operator"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_move_assignable_v",
    "link": "cpp/types/is_move_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_move_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_move_constructible",
    "link": "cpp/types/is_move_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type can be constructed from an rvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_move_constructible_v",
    "link": "cpp/types/is_move_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_move_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_swappable",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if objects of a type can be swapped with objects of same or different type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_swappable_v",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_swappable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_nothrow_swappable_with",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if objects of a type can be swapped with objects of same or different type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_nothrow_swappable_with_v",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_nothrow_swappable_with"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_null_pointer",
    "link": "cpp/types/is_null_pointer",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is std::nullptr_t"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_null_pointer_v",
    "link": "cpp/types/is_null_pointer",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_null_pointer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_object",
    "link": "cpp/types/is_object",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an object type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_object_v",
    "link": "cpp/types/is_object",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_partitioned",
    "link": "cpp/algorithm/is_partitioned",
    "marks": {
      "since": "c++11"
    },
    "description": "determines if the range is partitioned by the given predicate"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_permutation",
    "link": "cpp/algorithm/is_permutation",
    "marks": {
      "since": "c++11"
    },
    "description": "determines if a sequence is a permutation of another sequence"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_placeholder",
    "link": "cpp/utility/functional/is_placeholder",
    "marks": {
      "since": "c++11"
    },
    "description": "indicates that an object is a standard placeholder or can be used as one"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_placeholder_v",
    "link": "cpp/utility/functional/is_placeholder",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_placeholder"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_pod",
    "link": "cpp/types/is_pod",
    "marks": {
      "since": "c++11",
      "deprecated": "c++20"
    },
    "description": "checks if a type is a plain-old data (POD) type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_pod_v",
    "link": "cpp/types/is_pod",
    "marks": {
      "since": "c++17",
      "deprecated": "c++20"
    },
    "description": "Helper variable template of std::is_pod"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_pointer",
    "link": "cpp/types/is_pointer",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a pointer type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_pointer_v",
    "link": "cpp/types/is_pointer",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_pointer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_pointer_interconvertible_base_of",
    "link": "cpp/types/is_pointer_interconvertible_base_of",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a type is a pointer-interconvertible (initial) base of another type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_pointer_interconvertible_base_of_v",
    "link": "cpp/types/is_pointer_interconvertible_base_of",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper variable template of std::is_pointer_interconvertible_base_of"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_pointer_interconvertible_with_class",
    "link": "cpp/types/is_pointer_interconvertible_with_class",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if objects of a type are pointer-interconvertible with the specified subobject of that type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_polymorphic",
    "link": "cpp/types/is_polymorphic",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a polymorphic class type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_polymorphic_v",
    "link": "cpp/types/is_polymorphic",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_polymorphic"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_reference",
    "link": "cpp/types/is_reference",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is either an lvalue reference or rvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_reference_v",
    "link": "cpp/types/is_reference",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_reference"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_rvalue_reference",
    "link": "cpp/types/is_rvalue_reference",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an rvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_rvalue_reference_v",
    "link": "cpp/types/is_rvalue_reference",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_rvalue_reference"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_same",
    "link": "cpp/types/is_same",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if two types are the same"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_same_v",
    "link": "cpp/types/is_same",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_same"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_scalar",
    "link": "cpp/types/is_scalar",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a scalar type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_scalar_v",
    "link": "cpp/types/is_scalar",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_scalar"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_scoped_enum",
    "link": "cpp/types/is_scoped_enum",
    "marks": {
      "since": "c++23"
    },
    "description": "checks if a type is a scoped enumeration type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_scoped_enum_v",
    "link": "cpp/types/is_scoped_enum",
    "marks": {
      "since": "c++23"
    },
    "description": "Helper variable template of std::is_scoped_enum"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_signed",
    "link": "cpp/types/is_signed",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a signed arithmetic type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_signed_v",
    "link": "cpp/types/is_signed",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_signed"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_sorted",
    "link": "cpp/algorithm/is_sorted",
    "marks": {
      "since": "c++11"
    },
    "description": "checks whether a range is sorted into ascending order"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::is_sorted_until",
    "link": "cpp/algorithm/is_sorted_until",
    "marks": {
      "since": "c++11"
    },
    "description": "finds the largest sorted subrange"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_standard_layout",
    "link": "cpp/types/is_standard_layout",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a standard-layout type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_standard_layout_v",
    "link": "cpp/types/is_standard_layout",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_standard_layout"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_swappable",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if objects of a type can be swapped with objects of same or different type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_swappable_v",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_swappable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_swappable_with",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if objects of a type can be swapped with objects of same or different type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_swappable_with_v",
    "link": "cpp/types/is_swappable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_swappable_with"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivial",
    "link": "cpp/types/is_trivial",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is trivial"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivial_v",
    "link": "cpp/types/is_trivial",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivial"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_assignable",
    "link": "cpp/types/is_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has an assignment operator for a specific argument"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_assignable_v",
    "link": "cpp/types/is_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_constructible",
    "link": "cpp/types/is_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a constructor for specific arguments"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_constructible_v",
    "link": "cpp/types/is_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_copyable",
    "link": "cpp/types/is_trivially_copyable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is trivially copyable"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_copyable_v",
    "link": "cpp/types/is_trivially_copyable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_copyable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_copy_assignable",
    "link": "cpp/types/is_copy_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a copy assignment operator"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_copy_assignable_v",
    "link": "cpp/types/is_copy_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_copy_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_copy_constructible",
    "link": "cpp/types/is_copy_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a copy constructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_copy_constructible_v",
    "link": "cpp/types/is_copy_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_copy_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_default_constructible",
    "link": "cpp/types/is_default_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a default constructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_default_constructible_v",
    "link": "cpp/types/is_default_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_default_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_destructible",
    "link": "cpp/types/is_destructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a non-deleted destructor"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_destructible_v",
    "link": "cpp/types/is_destructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_destructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_move_assignable",
    "link": "cpp/types/is_move_assignable",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type has a move assignment operator"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_move_assignable_v",
    "link": "cpp/types/is_move_assignable",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_move_assignable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_trivially_move_constructible",
    "link": "cpp/types/is_move_constructible",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type can be constructed from an rvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_trivially_move_constructible_v",
    "link": "cpp/types/is_move_constructible",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_trivially_move_constructible"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_unbounded_array",
    "link": "cpp/types/is_unbounded_array",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a type is an array type of unknown bound"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_unbounded_array_v",
    "link": "cpp/types/is_unbounded_array",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper variable template of std::is_unbounded_array"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_union",
    "link": "cpp/types/is_union",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is a union type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_union_v",
    "link": "cpp/types/is_union",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_union"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_unsigned",
    "link": "cpp/types/is_unsigned",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is an unsigned arithmetic type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_unsigned_v",
    "link": "cpp/types/is_unsigned",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_unsigned"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_virtual_base_of",
    "link": "cpp/types/is_virtual_base_of",
    "marks": {
      "since": "c++26"
    },
    "description": "checks if a type is a virtual base of the other type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_virtual_base_of_v",
    "link": "cpp/types/is_virtual_base_of",
    "marks": {
      "since": "c++26"
    },
    "description": "Helper variable template of std::is_virtual_base_of"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_void",
    "link": "cpp/types/is_void",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is void"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_void_v",
    "link": "cpp/types/is_void",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_void"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_volatile",
    "link": "cpp/types/is_volatile",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a type is volatile-qualified"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_volatile_v",
    "link": "cpp/types/is_volatile",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::is_volatile"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::is_within_lifetime",
    "link": "cpp/types/is_within_lifetime",
    "marks": {
      "since": "c++26"
    },
    "description": "checks whether a pointer is within the object's lifetime at compile time"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isalnum",
    "link": "cpp/string/byte/isalnum",
    "marks": {},
    "description": "checks if a character is alphanumeric"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isalnum",
    "link": "cpp/locale/isalnum",
    "marks": {},
    "description": "checks if a character is alphanumeric"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isalpha",
    "link": "cpp/string/byte/isalpha",
    "marks": {},
    "description": "checks if a character is alphabetic"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isalpha",
    "link": "cpp/locale/isalpha",
    "marks": {},
    "description": "checks if a character is alphabetic"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isblank",
    "link": "cpp/string/byte/isblank",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a character is a blank character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isblank",
    "link": "cpp/locale/isblank",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a character is a blank character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iscntrl",
    "link": "cpp/string/byte/iscntrl",
    "marks": {},
    "description": "checks if a character is a control character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iscntrl",
    "link": "cpp/locale/iscntrl",
    "marks": {},
    "description": "checks if a character is a control character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isdigit",
    "link": "cpp/string/byte/isdigit",
    "marks": {},
    "description": "checks if a character is a digit"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isdigit",
    "link": "cpp/locale/isdigit",
    "marks": {},
    "description": "checks if a character is a digit"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isfinite",
    "link": "cpp/numeric/math/isfinite",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the given number has finite value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isgraph",
    "link": "cpp/string/byte/isgraph",
    "marks": {},
    "description": "checks if a character is a graphical character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isgraph",
    "link": "cpp/locale/isgraph",
    "marks": {},
    "description": "checks if a character is a graphical character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isgreater",
    "link": "cpp/numeric/math/isgreater",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the first floating-point argument is greater than the second"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isgreaterequal",
    "link": "cpp/numeric/math/isgreaterequal",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the first floating-point argument is greater or equal than the second"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isinf",
    "link": "cpp/numeric/math/isinf",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the given number is infinite"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isless",
    "link": "cpp/numeric/math/isless",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the first floating-point argument is less than the second"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::islessequal",
    "link": "cpp/numeric/math/islessequal",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the first floating-point argument is less or equal than the second"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::islessgreater",
    "link": "cpp/numeric/math/islessgreater",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the first floating-point argument is less or greater than the second"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::islower",
    "link": "cpp/string/byte/islower",
    "marks": {},
    "description": "checks if a character is lowercase"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::islower",
    "link": "cpp/locale/islower",
    "marks": {},
    "description": "checks if a character is lowercase"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isnan",
    "link": "cpp/numeric/math/isnan",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the given number is NaN"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isnormal",
    "link": "cpp/numeric/math/isnormal",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the given number is normal"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ispanstream",
    "link": "cpp/io/basic_ispanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_ispanstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isprint",
    "link": "cpp/string/byte/isprint",
    "marks": {},
    "description": "checks if a character is a printing character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isprint",
    "link": "cpp/locale/isprint",
    "marks": {},
    "description": "checks if a character is a printing character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ispunct",
    "link": "cpp/string/byte/ispunct",
    "marks": {},
    "description": "checks if a character is a punctuation character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ispunct",
    "link": "cpp/locale/ispunct",
    "marks": {},
    "description": "checks if a character is a punctuation character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isspace",
    "link": "cpp/string/byte/isspace",
    "marks": {},
    "description": "checks if a character is a space character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isspace",
    "link": "cpp/locale/isspace",
    "marks": {},
    "description": "checks if a character is a space character"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::istream",
    "link": "cpp/io/basic_istream",
    "marks": {},
    "description": "std::basic_istream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::istreambuf_iterator",
    "link": "cpp/iterator/istreambuf_iterator",
    "marks": {},
    "description": "input iterator that reads from std::basic_streambuf"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::istream_iterator",
    "link": "cpp/iterator/istream_iterator",
    "marks": {},
    "description": "input iterator that reads from std::basic_istream"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::istringstream",
    "link": "cpp/io/basic_istringstream",
    "marks": {},
    "description": "std::basic_istringstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::istrstream",
    "link": "cpp/io/istrstream",
    "marks": {
      "deprecated": "c++98"
    },
    "description": "implements character array input operations"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isunordered",
    "link": "cpp/numeric/math/isunordered",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if two floating-point values are unordered"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isupper",
    "link": "cpp/string/byte/isupper",
    "marks": {},
    "description": "checks if a character is an uppercase character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isupper",
    "link": "cpp/locale/isupper",
    "marks": {},
    "description": "checks if a character is an uppercase character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswalnum",
    "link": "cpp/string/wide/iswalnum",
    "marks": {},
    "description": "checks if a wide character is alphanumeric"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswalpha",
    "link": "cpp/string/wide/iswalpha",
    "marks": {},
    "description": "checks if a wide character is alphabetic"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswblank",
    "link": "cpp/string/wide/iswblank",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a wide character is a blank character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswcntrl",
    "link": "cpp/string/wide/iswcntrl",
    "marks": {},
    "description": "checks if a wide character is a control character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswctype",
    "link": "cpp/string/wide/iswctype",
    "marks": {},
    "description": "classifies a wide character according to the specified LC_CTYPE category"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswdigit",
    "link": "cpp/string/wide/iswdigit",
    "marks": {},
    "description": "checks if a wide character is a digit"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswgraph",
    "link": "cpp/string/wide/iswgraph",
    "marks": {},
    "description": "checks if a wide character is a graphical character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswlower",
    "link": "cpp/string/wide/iswlower",
    "marks": {},
    "description": "checks if a wide character is lowercase"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswprint",
    "link": "cpp/string/wide/iswprint",
    "marks": {},
    "description": "checks if a wide character is a printing character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswpunct",
    "link": "cpp/string/wide/iswpunct",
    "marks": {},
    "description": "checks if a wide character is a punctuation character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswspace",
    "link": "cpp/string/wide/iswspace",
    "marks": {},
    "description": "checks if a wide character is a space character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswupper",
    "link": "cpp/string/wide/iswupper",
    "marks": {},
    "description": "checks if a wide character is an uppercase character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::iswxdigit",
    "link": "cpp/string/wide/iswxdigit",
    "marks": {},
    "description": "checks if a wide character is a hexadecimal character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isxdigit",
    "link": "cpp/string/byte/isxdigit",
    "marks": {},
    "description": "checks if a character is a hexadecimal character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::isxdigit",
    "link": "cpp/locale/isxdigit",
    "marks": {},
    "description": "checks if a character is a hexadecimal character"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::iter_common_reference_t",
    "link": "cpp/iterator/iter_t",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the associated types of an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::iter_const_reference_t",
    "link": "cpp/iterator/iter_t",
    "marks": {
      "since": "c++23"
    },
    "description": "computes the associated types of an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::iter_difference_t",
    "link": "cpp/iterator/iter_t",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the associated types of an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::iter_reference_t",
    "link": "cpp/iterator/iter_t",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the associated types of an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::iter_rvalue_reference_t",
    "link": "cpp/iterator/iter_t",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the associated types of an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::iter_swap",
    "link": "cpp/algorithm/iter_swap",
    "marks": {},
    "description": "swaps the elements pointed to by two iterators"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::iter_value_t",
    "link": "cpp/iterator/iter_t",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the associated types of an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::iterator",
    "link": "cpp/iterator/iterator",
    "marks": {
      "deprecated": "c++17"
    },
    "description": "base class to ease the definition of required types for simple iterators"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::iterator_traits",
    "link": "cpp/iterator/iterator_traits",
    "marks": {},
    "description": "provides uniform interface to the properties of an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::jmp_buf",
    "link": "cpp/utility/program/jmp_buf",
    "marks": {},
    "description": "execution context type"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::jthread",
    "link": "cpp/thread/jthread",
    "marks": {
      "since": "c++20"
    },
    "description": "std::thread with support for auto-joining and cancellation"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::kill_dependency",
    "link": "cpp/atomic/kill_dependency",
    "marks": {
      "since": "c++11"
    },
    "description": "removes the specified object from the std::memory_order_consume dependency tree"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::kilo",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::knuth_b",
    "link": "cpp/numeric/random/shuffle_order_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::shuffle_order_engine<std::minstd_rand0, 256>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::labs",
    "link": "cpp/numeric/math/abs",
    "marks": {},
    "description": "computes absolute value of an integral value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::laguerre",
    "link": "cpp/numeric/special_functions/laguerre",
    "marks": {
      "since": "c++17"
    },
    "description": "Laguerre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::laguerref",
    "link": "cpp/numeric/special_functions/laguerre",
    "marks": {
      "since": "c++17"
    },
    "description": "Laguerre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::laguerrel",
    "link": "cpp/numeric/special_functions/laguerre",
    "marks": {
      "since": "c++17"
    },
    "description": "Laguerre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::latch",
    "link": "cpp/thread/latch",
    "marks": {
      "since": "c++20"
    },
    "description": "single-use thread barrier"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::launch",
    "link": "cpp/thread/launch",
    "marks": {
      "since": "c++11"
    },
    "description": "specifies the launch policy for std::async"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::launder",
    "link": "cpp/utility/launder",
    "marks": {
      "since": "c++17"
    },
    "description": "pointer optimization barrier"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::layout_left",
    "link": "cpp/container/mdspan/layout_left",
    "marks": {
      "since": "c++23"
    },
    "description": "column-major multidimensional array layout mapping policy; leftmost extent has stride 1"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::layout_left_padded",
    "link": "cpp/container/mdspan/layout_left_padded",
    "marks": {
      "since": "c++26"
    },
    "description": "column-major layout mapping policy with padding stride that can be greater than or equal to the leftmost extent"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::layout_right",
    "link": "cpp/container/mdspan/layout_right",
    "marks": {
      "since": "c++23"
    },
    "description": "row-major multidimensional array layout mapping policy; rightmost extent has stride 1"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::layout_right_padded",
    "link": "cpp/container/mdspan/layout_right_padded",
    "marks": {
      "since": "c++26"
    },
    "description": "row-major layout mapping policy with padding stride that can be greater than or equal to the rightmost extent"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::layout_stride",
    "link": "cpp/container/mdspan/layout_stride",
    "marks": {
      "since": "c++23"
    },
    "description": "a layout mapping policy with user-defined strides"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::lcm",
    "link": "cpp/numeric/lcm",
    "marks": {
      "since": "c++17"
    },
    "description": "computes the least common multiple of two integers"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::lconv",
    "link": "cpp/locale/lconv",
    "marks": {},
    "description": "formatting details, returned by std::localeconv"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ldexp",
    "link": "cpp/numeric/math/ldexp",
    "marks": {},
    "description": "multiplies a number by 2 raised to an integral power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ldexpf",
    "link": "cpp/numeric/math/ldexp",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by 2 raised to an integral power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ldexpl",
    "link": "cpp/numeric/math/ldexp",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by 2 raised to an integral power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ldiv",
    "link": "cpp/numeric/math/div",
    "marks": {},
    "description": "computes quotient and remainder of integer division"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ldiv_t",
    "link": "cpp/numeric/math/div",
    "marks": {},
    "description": "structure type, returned by std::ldiv"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::left",
    "link": "cpp/io/manip/left",
    "marks": {},
    "description": "sets the placement of fill characters"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::legendre",
    "link": "cpp/numeric/special_functions/legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "Legendre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::legendref",
    "link": "cpp/numeric/special_functions/legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "Legendre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::legendrel",
    "link": "cpp/numeric/special_functions/legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "Legendre polynomials"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::length_error",
    "link": "cpp/error/length_error",
    "marks": {},
    "description": "exception class to report attempts to exceed maximum allowed size"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lerp",
    "link": "cpp/numeric/lerp",
    "marks": {
      "since": "c++20"
    },
    "description": "linear interpolation function"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::less",
    "link": "cpp/utility/functional/less",
    "marks": {},
    "description": "function object implementing x < y"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::less_equal",
    "link": "cpp/utility/functional/less_equal",
    "marks": {},
    "description": "function object implementing x <= y"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::lexicographical_compare",
    "link": "cpp/algorithm/lexicographical_compare",
    "marks": {},
    "description": "returns true if one range is lexicographically less than another"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::lexicographical_compare_three_way",
    "link": "cpp/algorithm/lexicographical_compare_three_way",
    "marks": {
      "since": "c++20"
    },
    "description": "compares two ranges using three-way comparison"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lgamma",
    "link": "cpp/numeric/math/lgamma",
    "marks": {
      "since": "c++11"
    },
    "description": "natural logarithm of the gamma function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lgammaf",
    "link": "cpp/numeric/math/lgamma",
    "marks": {
      "since": "c++11"
    },
    "description": "natural logarithm of the gamma function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lgammal",
    "link": "cpp/numeric/math/lgamma",
    "marks": {
      "since": "c++11"
    },
    "description": "natural logarithm of the gamma function"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::linalg",
    "link": "cpp/symbol_index/linalg",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::add",
    "link": "cpp/numeric/linalg/add",
    "marks": {
      "since": "c++26"
    },
    "description": "adds vectors or matrices elementwise"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::apply_givens_rotation",
    "link": "cpp/numeric/linalg/apply_givens_rotation",
    "marks": {
      "since": "c++26"
    },
    "description": "applies plane rotation to vectors"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::linalg::column_major",
    "link": "cpp/numeric/linalg/storage_order_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "describe the order of elements in an std::mdspan with linalg::layout_blas_packed layout"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::linalg::column_major_t",
    "link": "cpp/numeric/linalg/storage_order_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "describe the order of elements in an std::mdspan with linalg::layout_blas_packed layout"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::conjugate_transposed",
    "link": "cpp/numeric/linalg/conjugate_transposed",
    "marks": {
      "since": "c++26"
    },
    "description": "returns a conjugate transpose view of an object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::conjugated",
    "link": "cpp/numeric/linalg/conjugated",
    "marks": {
      "since": "c++26"
    },
    "description": "returns a new read-only std::mdspan whose elements are the complex conjugates of the corresponding elements of the given std::mdspan"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::linalg::conjugated_accessor",
    "link": "cpp/numeric/linalg/conjugated_accessor",
    "marks": {
      "since": "c++26"
    },
    "description": "std::mdspan accessor policy whose reference represents the complex conjugate of its nested std::mdspan accessor's reference"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::copy",
    "link": "cpp/numeric/linalg/copy",
    "marks": {
      "since": "c++26"
    },
    "description": "copies elements of one matrix or vector into another"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::dot",
    "link": "cpp/numeric/linalg/dot",
    "marks": {
      "since": "c++26"
    },
    "description": "returns nonconjugated dot product of two vectors"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::dotc",
    "link": "cpp/numeric/linalg/dotc",
    "marks": {
      "since": "c++26"
    },
    "description": "returns conjugated dot product of two vectors"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::linalg::explicit_diagonal",
    "link": "cpp/numeric/linalg/diagonal_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms should access diagonal entries of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::linalg::explicit_diagonal_t",
    "link": "cpp/numeric/linalg/diagonal_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms should access diagonal entries of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::hermitian_matrix_product",
    "link": "cpp/numeric/linalg/hermitian_matrix_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes Hermitian matrix-matrix product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::hermitian_matrix_rank_1_update",
    "link": "cpp/numeric/linalg/hermitian_matrix_rank_1_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs rank-1 update of a Hermitian matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::hermitian_matrix_rank_2_update",
    "link": "cpp/numeric/linalg/hermitian_matrix_rank_2_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs rank-2 update of a symmetric matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::hermitian_matrix_rank_2k_update",
    "link": "cpp/numeric/linalg/hermitian_matrix_rank_2k_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs rank-2k update of a Hermitian matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::hermitian_matrix_rank_k_update",
    "link": "cpp/numeric/linalg/hermitian_matrix_rank_k_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs rank-k update of a Hermitian matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::hermitian_matrix_vector_product",
    "link": "cpp/numeric/linalg/hermitian_matrix_vector_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes Hermitian matrix-vector product"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::linalg::implicit_unit_diagonal",
    "link": "cpp/numeric/linalg/diagonal_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms should access diagonal entries of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::linalg::implicit_unit_diagonal_t",
    "link": "cpp/numeric/linalg/diagonal_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms should access diagonal entries of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::linalg::layout_blas_packed",
    "link": "cpp/numeric/linalg/layout_blas_packed",
    "marks": {
      "since": "c++26"
    },
    "description": "std::mdspan layout mapping policy that represents a square matrix that stores only the entries in one triangle, in a packed contiguous format"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::linalg::layout_transpose",
    "link": "cpp/numeric/linalg/layout_transpose",
    "marks": {
      "since": "c++26"
    },
    "description": "std::mdspan layout mapping policy that swaps the rightmost two indices, extents, and strides of any unique layout mapping policy"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::linalg::lower_triangle",
    "link": "cpp/numeric/linalg/triangle_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms and other users of a matrix should access the upper triangle or lower triangle of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::linalg::lower_triangle_t",
    "link": "cpp/numeric/linalg/triangle_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms and other users of a matrix should access the upper triangle or lower triangle of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::matrix_frob_norm",
    "link": "cpp/numeric/linalg/matrix_frob_norm",
    "marks": {
      "since": "c++26"
    },
    "description": "returns Frobenius norm of a matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::matrix_inf_norm",
    "link": "cpp/numeric/linalg/matrix_inf_norm",
    "marks": {
      "since": "c++26"
    },
    "description": "returns infinity norm of a matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::matrix_one_norm",
    "link": "cpp/numeric/linalg/matrix_one_norm",
    "marks": {
      "since": "c++26"
    },
    "description": "returns one norm of a matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::matrix_product",
    "link": "cpp/numeric/linalg/matrix_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes matrix-matrix product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::matrix_rank_1_update",
    "link": "cpp/numeric/linalg/matrix_rank_1_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs nonsymmetric nonconjugated rank-1 update of a matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::matrix_rank_1_update_c",
    "link": "cpp/numeric/linalg/matrix_rank_1_update_c",
    "marks": {
      "since": "c++26"
    },
    "description": "performs nonsymmetric conjugated rank-1 update of a matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::matrix_vector_product",
    "link": "cpp/numeric/linalg/matrix_vector_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes matrix-vector product"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::linalg::row_major",
    "link": "cpp/numeric/linalg/storage_order_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "describe the order of elements in an std::mdspan with linalg::layout_blas_packed layout"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::linalg::row_major_t",
    "link": "cpp/numeric/linalg/storage_order_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "describe the order of elements in an std::mdspan with linalg::layout_blas_packed layout"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::scale",
    "link": "cpp/numeric/linalg/scale",
    "marks": {
      "since": "c++26"
    },
    "description": "overwrites matrix or vector with the result of computing the elementwise multiplication by a scalar"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::scaled",
    "link": "cpp/numeric/linalg/scaled",
    "marks": {
      "since": "c++26"
    },
    "description": "returns a new read-only std::mdspan computed by the elementwise product of the scaling factor and the corresponding elements of the given std::mdspan"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::linalg::scaled_accessor",
    "link": "cpp/numeric/linalg/scaled_accessor",
    "marks": {
      "since": "c++26"
    },
    "description": "std::mdspan accessor policy whose reference represents the product of a scaling factor that is fixed and its nested std::mdspan accessor's reference"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::setup_givens_rotation",
    "link": "cpp/numeric/linalg/setup_givens_rotation",
    "marks": {
      "since": "c++26"
    },
    "description": "generates plane rotation"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::linalg::setup_givens_rotation_result",
    "link": "cpp/numeric/linalg/setup_givens_rotation_result",
    "marks": {
      "since": "c++26"
    },
    "description": "Return type of std::linalg::setup_givens_rotation"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::linalg::sum_of_squares_result",
    "link": "cpp/numeric/linalg/vector_sum_of_squares",
    "marks": {
      "since": "c++26"
    },
    "description": "Return type of std::linalg::sum_of_squares"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::swap_elements",
    "link": "cpp/numeric/linalg/swap_elements",
    "marks": {
      "since": "c++26"
    },
    "description": "swaps all corresponding elements of matrix or vector"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::symmetric_matrix_product",
    "link": "cpp/numeric/linalg/symmetric_matrix_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes symmetric matrix-matrix product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::symmetric_matrix_rank_1_update",
    "link": "cpp/numeric/linalg/symmetric_matrix_rank_1_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs rank-1 update of a symmetric matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::symmetric_matrix_rank_2_update",
    "link": "cpp/numeric/linalg/symmetric_matrix_rank_2_update",
    "marks": {
      "since": "c++26"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::symmetric_matrix_rank_2k_update",
    "link": "cpp/numeric/linalg/symmetric_matrix_rank_2k_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs rank-2k update of a symmetric matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::symmetric_matrix_rank_k_update",
    "link": "cpp/numeric/linalg/symmetric_matrix_rank_k_update",
    "marks": {
      "since": "c++26"
    },
    "description": "performs rank-k update of a symmetric matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::symmetric_matrix_vector_product",
    "link": "cpp/numeric/linalg/symmetric_matrix_vector_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes symmetric matrix-vector product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::transposed",
    "link": "cpp/numeric/linalg/transposed",
    "marks": {
      "since": "c++26"
    },
    "description": "returns a new std::mdspan representing the transpose of the input matrix by the given std::mdspan"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::triangular_matrix_left_product",
    "link": "cpp/numeric/linalg/triangular_matrix_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes triangular matrix-matrix product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::triangular_matrix_matrix_left_solve",
    "link": "cpp/numeric/linalg/triangular_matrix_matrix_solve",
    "marks": {
      "since": "c++26"
    },
    "description": "solves multiple triangular linear systems"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::triangular_matrix_matrix_right_solve",
    "link": "cpp/numeric/linalg/triangular_matrix_matrix_solve",
    "marks": {
      "since": "c++26"
    },
    "description": "solves multiple triangular linear systems"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::triangular_matrix_product",
    "link": "cpp/numeric/linalg/triangular_matrix_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes triangular matrix-matrix product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::triangular_matrix_right_product",
    "link": "cpp/numeric/linalg/triangular_matrix_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes triangular matrix-matrix product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::triangular_matrix_vector_product",
    "link": "cpp/numeric/linalg/triangular_matrix_vector_product",
    "marks": {
      "since": "c++26"
    },
    "description": "computes triangular matrix-vector product"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::triangular_matrix_vector_solve",
    "link": "cpp/numeric/linalg/triangular_matrix_vector_solve",
    "marks": {
      "since": "c++26"
    },
    "description": "solves a triangular linear system"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::linalg::upper_triangle",
    "link": "cpp/numeric/linalg/triangle_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms and other users of a matrix should access the upper triangle or lower triangle of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::linalg::upper_triangle_t",
    "link": "cpp/numeric/linalg/triangle_tags",
    "marks": {
      "since": "c++26"
    },
    "description": "specify whether algorithms and other users of a matrix should access the upper triangle or lower triangle of the matrix"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::vector_abs_sum",
    "link": "cpp/numeric/linalg/vector_abs_sum",
    "marks": {
      "since": "c++26"
    },
    "description": "returns sum of absolute values of the vector elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::vector_idx_abs_max",
    "link": "cpp/numeric/linalg/vector_idx_abs_max",
    "marks": {
      "since": "c++26"
    },
    "description": "returns index of maximum absolute value of vector elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::vector_sum_of_squares",
    "link": "cpp/numeric/linalg/vector_sum_of_squares",
    "marks": {
      "since": "c++26"
    },
    "description": "returns scaled sum of squares of the vector elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::linalg::vector_two_norm",
    "link": "cpp/numeric/linalg/vector_two_norm",
    "marks": {
      "since": "c++26"
    },
    "description": "returns Euclidean norm of a vector"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::linear_congruential_engine",
    "link": "cpp/numeric/random/linear_congruential_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "implements linear congruential algorithm"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::list",
    "link": "cpp/container/list",
    "marks": {},
    "description": "doubly-linked list"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::literals",
    "link": "cpp/symbol_index/literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::literals::chrono_literals",
    "link": "cpp/symbol_index/chrono_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::literals::complex_literals",
    "link": "cpp/symbol_index/complex_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::literals::string_literals",
    "link": "cpp/symbol_index/string_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::literals::string_view_literals",
    "link": "cpp/symbol_index/string_view_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::llabs",
    "link": "cpp/numeric/math/abs",
    "marks": {
      "since": "c++11"
    },
    "description": "computes absolute value of an integral value (|x|)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lldiv",
    "link": "cpp/numeric/math/div",
    "marks": {
      "since": "c++11"
    },
    "description": "computes quotient and remainder of integer division"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::lldiv_t",
    "link": "cpp/numeric/math/div",
    "marks": {
      "since": "c++11"
    },
    "description": "structure type, returned by std::lldiv"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::llrint",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::llrintf",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::llrintl",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::llround",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::llroundf",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::llroundl",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::locale",
    "link": "cpp/locale/locale",
    "marks": {},
    "description": "set of polymorphic facets that encapsulate cultural differences"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::localeconv",
    "link": "cpp/locale/localeconv",
    "marks": {},
    "description": "queries numeric and monetary formatting details of the current locale"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::localtime",
    "link": "cpp/chrono/c/localtime",
    "marks": {},
    "description": "converts time since epoch to calendar time expressed as local time"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::lock",
    "link": "cpp/thread/lock",
    "marks": {
      "since": "c++11"
    },
    "description": "locks specified mutexes, blocks if any are unavailable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::lock_guard",
    "link": "cpp/thread/lock_guard",
    "marks": {
      "since": "c++11"
    },
    "description": "implements a strictly scope-based mutex ownership wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log",
    "link": "cpp/numeric/math/log",
    "marks": {},
    "description": "computes natural (base e) logarithm (ln(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::log",
    "link": "cpp/numeric/complex/log",
    "marks": {},
    "note": "std::complex",
    "description": "complex natural logarithm with the branch cuts along the negative real axis"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::log",
    "link": "cpp/numeric/valarray/log",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::log to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log10",
    "link": "cpp/numeric/math/log10",
    "marks": {},
    "description": "computes common (base 10) logarithm (log10(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::log10",
    "link": "cpp/numeric/complex/log10",
    "marks": {},
    "note": "std::complex",
    "description": "complex common logarithm with the branch cuts along the negative real axis"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::log10",
    "link": "cpp/numeric/valarray/log10",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::log10 to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log10f",
    "link": "cpp/numeric/math/log10",
    "marks": {
      "since": "c++11"
    },
    "description": "computes common (base 10) logarithm (log10(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log10l",
    "link": "cpp/numeric/math/log10",
    "marks": {
      "since": "c++11"
    },
    "description": "computes common (base 10) logarithm (log10(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log1p",
    "link": "cpp/numeric/math/log1p",
    "marks": {
      "since": "c++11"
    },
    "description": "natural logarithm (to base e) of 1 plus the given number (ln(1+x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log1pf",
    "link": "cpp/numeric/math/log1p",
    "marks": {
      "since": "c++11"
    },
    "description": "natural logarithm (to base e) of 1 plus the given number (ln(1+x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log1pl",
    "link": "cpp/numeric/math/log1p",
    "marks": {
      "since": "c++11"
    },
    "description": "natural logarithm (to base e) of 1 plus the given number (ln(1+x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log2",
    "link": "cpp/numeric/math/log2",
    "marks": {
      "since": "c++11"
    },
    "description": "base 2 logarithm of the given number (log2(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log2f",
    "link": "cpp/numeric/math/log2",
    "marks": {
      "since": "c++11"
    },
    "description": "base 2 logarithm of the given number (log2(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::log2l",
    "link": "cpp/numeric/math/log2",
    "marks": {
      "since": "c++11"
    },
    "description": "base 2 logarithm of the given number (log2(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::logb",
    "link": "cpp/numeric/math/logb",
    "marks": {
      "since": "c++11"
    },
    "description": "extracts exponent of the number"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::logbf",
    "link": "cpp/numeric/math/logb",
    "marks": {
      "since": "c++11"
    },
    "description": "extracts exponent of the number"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::logbl",
    "link": "cpp/numeric/math/logb",
    "marks": {
      "since": "c++11"
    },
    "description": "extracts exponent of the number"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::logf",
    "link": "cpp/numeric/math/log",
    "marks": {
      "since": "c++11"
    },
    "description": "computes natural (base e) logarithm (ln(x))"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::logic_error",
    "link": "cpp/error/logic_error",
    "marks": {},
    "description": "exception class to indicate violations of logical preconditions or class invariants"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::logical_and",
    "link": "cpp/utility/functional/logical_and",
    "marks": {},
    "description": "function object implementing x && y"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::logical_not",
    "link": "cpp/utility/functional/logical_not",
    "marks": {},
    "description": "function object implementing !x"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::logical_or",
    "link": "cpp/utility/functional/logical_or",
    "marks": {},
    "description": "function object implementing x || y"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::logl",
    "link": "cpp/numeric/math/log",
    "marks": {
      "since": "c++11"
    },
    "description": "computes natural (base e) logarithm (ln(x))"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::lognormal_distribution",
    "link": "cpp/numeric/random/lognormal_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a lognormal distribution"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::longjmp",
    "link": "cpp/utility/program/longjmp",
    "marks": {},
    "description": "jumps to specified location"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::lower_bound",
    "link": "cpp/algorithm/lower_bound",
    "marks": {},
    "description": "returns an iterator to the first element not less than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lrint",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lrintf",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lrintl",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lround",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lroundf",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::lroundl",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_any",
    "link": "cpp/utility/any/make_any",
    "marks": {
      "since": "c++17"
    },
    "description": "creates an any object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_const_iterator",
    "link": "cpp/iterator/make_const_iterator",
    "marks": {
      "since": "c++23"
    },
    "description": "creates a std::const_iterator of type inferred from the argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_const_sentinel",
    "link": "cpp/iterator/make_const_sentinel",
    "marks": {
      "since": "c++23"
    },
    "description": "creates a std::const_sentinel of type inferred from the argument"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::make_error_code",
    "link": "cpp/error/errc/make_error_code",
    "marks": {
      "since": "c++11"
    },
    "note": "std::errc",
    "description": "creates error code value for errc enum e"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::make_error_code",
    "link": "cpp/io/io_errc/make_error_code",
    "marks": {
      "since": "c++11"
    },
    "note": "std::io_errc",
    "description": "constructs an iostream error code"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::make_error_condition",
    "link": "cpp/error/errc/make_error_condition",
    "marks": {
      "since": "c++11"
    },
    "note": "std::errc",
    "description": "creates an error condition for an errc value e"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::make_error_condition",
    "link": "cpp/io/io_errc/make_error_condition",
    "marks": {
      "since": "c++11"
    },
    "note": "std::io_errc",
    "description": "constructs an iostream error condition"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_exception_ptr",
    "link": "cpp/error/make_exception_ptr",
    "marks": {
      "since": "c++11"
    },
    "description": "creates an std::exception_ptr from an exception object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_format_args",
    "link": "cpp/utility/format/make_format_args",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a type-erased object referencing all formatting arguments, convertible to format_args"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_from_tuple",
    "link": "cpp/utility/make_from_tuple",
    "marks": {
      "since": "c++17"
    },
    "description": "construct an object with a tuple of arguments"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::make_hazard_pointer",
    "link": "cpp/thread/make_hazard_pointer",
    "marks": {
      "since": "c++26"
    },
    "description": "constructs a hazard pointer"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_heap",
    "link": "cpp/algorithm/make_heap",
    "marks": {},
    "description": "creates a max heap out of a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::make_index_sequence",
    "link": "cpp/utility/integer_sequence",
    "marks": {
      "since": "c++14"
    },
    "description": "std::make_integer_sequence<std::size_t, N>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::make_integer_sequence",
    "link": "cpp/utility/integer_sequence",
    "marks": {
      "since": "c++14"
    },
    "description": "std::integer_sequence<T, 0, 1, 2, ..., N - 1>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_move_iterator",
    "link": "cpp/iterator/make_move_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a std::move_iterator of type inferred from the argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_obj_using_allocator",
    "link": "cpp/memory/make_obj_using_allocator",
    "marks": {
      "since": "c++20"
    },
    "description": "creates an object of the given type by means of uses-allocator construction"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_optional",
    "link": "cpp/utility/optional/make_optional",
    "marks": {
      "since": "c++17"
    },
    "description": "creates an optional object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_pair",
    "link": "cpp/utility/pair/make_pair",
    "marks": {},
    "description": "creates a pair object of type, defined by the argument types"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_reverse_iterator",
    "link": "cpp/iterator/make_reverse_iterator",
    "marks": {
      "since": "c++14"
    },
    "description": "creates a std::reverse_iterator of type inferred from the argument"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_shared",
    "link": "cpp/memory/shared_ptr/make_shared",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a shared pointer that manages a new object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_shared_for_overwrite",
    "link": "cpp/memory/shared_ptr/make_shared",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a shared pointer that manages a new object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::make_signed",
    "link": "cpp/types/make_signed",
    "marks": {
      "since": "c++11"
    },
    "description": "makes the given integral type signed"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::make_signed_t",
    "link": "cpp/types/make_signed",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::make_signed"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_tuple",
    "link": "cpp/utility/tuple/make_tuple",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a tuple object of the type defined by the argument types"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_unique",
    "link": "cpp/memory/unique_ptr/make_unique",
    "marks": {
      "since": "c++14"
    },
    "description": "creates a unique pointer that manages a new object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_unique_for_overwrite",
    "link": "cpp/memory/unique_ptr/make_unique",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a unique pointer that manages a new object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::make_unsigned",
    "link": "cpp/types/make_unsigned",
    "marks": {
      "since": "c++11"
    },
    "description": "makes the given integral type unsigned"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::make_unsigned_t",
    "link": "cpp/types/make_unsigned",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::make_unsigned"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::make_wformat_args",
    "link": "cpp/utility/format/make_format_args",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a type-erased object referencing all formatting arguments, convertible to format_args"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::malloc",
    "link": "cpp/memory/c/malloc",
    "marks": {},
    "description": "allocates memory"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::map",
    "link": "cpp/container/map",
    "marks": {},
    "description": "collection of key-value pairs, sorted by keys, keys are unique"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::mask_array",
    "link": "cpp/numeric/valarray/mask_array",
    "marks": {},
    "description": "proxy to a subset of a valarray after applying a boolean mask operator[]"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::match_results",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies one regular expression match, including all sub-expression matches"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::max",
    "link": "cpp/algorithm/max",
    "marks": {},
    "description": "returns the greater of the given values"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::max_align_t",
    "link": "cpp/types/max_align_t",
    "marks": {
      "since": "c++11"
    },
    "description": "trivial type with alignment requirement as great as any other scalar type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::max_element",
    "link": "cpp/algorithm/max_element",
    "marks": {},
    "description": "returns the largest element in a range"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mblen",
    "link": "cpp/string/multibyte/mblen",
    "marks": {},
    "description": "returns the number of bytes in the next multibyte character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbrlen",
    "link": "cpp/string/multibyte/mbrlen",
    "marks": {},
    "description": "returns the number of bytes in the next multibyte character, given state"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbrtoc16",
    "link": "cpp/string/multibyte/mbrtoc16",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a narrow multibyte character to UTF-16 encoding"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbrtoc32",
    "link": "cpp/string/multibyte/mbrtoc32",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a narrow multibyte character to UTF-32 encoding"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbrtoc8",
    "link": "cpp/string/multibyte/mbrtoc8",
    "marks": {
      "since": "c++20"
    },
    "description": "converts a narrow multibyte character to UTF-8 encoding"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbrtowc",
    "link": "cpp/string/multibyte/mbrtowc",
    "marks": {},
    "description": "converts the next multibyte character to wide character, given state"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbsinit",
    "link": "cpp/string/multibyte/mbsinit",
    "marks": {},
    "description": "checks if the std::mbstate_t object represents initial shift state"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbsrtowcs",
    "link": "cpp/string/multibyte/mbsrtowcs",
    "marks": {},
    "description": "converts a narrow multibyte character string to wide string, given state"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::mbstate_t",
    "link": "cpp/string/multibyte/mbstate_t",
    "marks": {},
    "description": "conversion state information necessary to iterate multibyte character strings"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbstowcs",
    "link": "cpp/string/multibyte/mbstowcs",
    "marks": {},
    "description": "converts a narrow multibyte character string to wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mbtowc",
    "link": "cpp/string/multibyte/mbtowc",
    "marks": {},
    "description": "converts the next multibyte character to wide character"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::mdspan",
    "link": "cpp/container/mdspan",
    "marks": {
      "since": "c++23"
    },
    "description": "a multi-dimensional non-owning array view"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::mega",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000000, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::mem_fn",
    "link": "cpp/utility/functional/mem_fn",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a function object out of a pointer to a member"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::memchr",
    "link": "cpp/string/byte/memchr",
    "marks": {},
    "description": "searches an array for the first occurrence of a character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::memcmp",
    "link": "cpp/string/byte/memcmp",
    "marks": {},
    "description": "compares two buffers"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::memcpy",
    "link": "cpp/string/byte/memcpy",
    "marks": {},
    "description": "copies one buffer to another"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::memmove",
    "link": "cpp/string/byte/memmove",
    "marks": {},
    "description": "moves one buffer to another"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::memory_order",
    "link": "cpp/atomic/memory_order",
    "marks": {
      "since": "c++11"
    },
    "description": "defines memory ordering constraints for the given atomic operation"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::memory_order_acq_rel",
    "link": "cpp/atomic/memory_order",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::memory_order_acquire",
    "link": "cpp/atomic/memory_order",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::memory_order_consume",
    "link": "cpp/atomic/memory_order",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::memory_order_relaxed",
    "link": "cpp/atomic/memory_order",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::memory_order_release",
    "link": "cpp/atomic/memory_order",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::memory_order_seq_cst",
    "link": "cpp/atomic/memory_order",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::memset",
    "link": "cpp/string/byte/memset",
    "marks": {},
    "description": "fills a buffer with a character"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::merge",
    "link": "cpp/algorithm/merge",
    "marks": {},
    "description": "merges two sorted ranges"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::mergeable",
    "link": "cpp/iterator/mergeable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies the requirements of algorithms that merge sorted sequences into an output sequence by copying elements"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::mersenne_twister_engine",
    "link": "cpp/numeric/random/mersenne_twister_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "implements Mersenne twister algorithm"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::messages",
    "link": "cpp/locale/messages",
    "marks": {},
    "description": "implements retrieval of strings from message catalogs"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::messages_base",
    "link": "cpp/locale/messages_base",
    "marks": {},
    "description": "defines messages catalog type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::messages_byname",
    "link": "cpp/locale/messages_byname",
    "marks": {},
    "description": "represents the system-supplied std::messages for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::micro",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000000>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::midpoint",
    "link": "cpp/numeric/midpoint",
    "marks": {
      "since": "c++20"
    },
    "description": "midpoint between two numbers or pointers"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::milli",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::min",
    "link": "cpp/algorithm/min",
    "marks": {},
    "description": "returns the smaller of the given values"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::min_element",
    "link": "cpp/algorithm/min_element",
    "marks": {},
    "description": "returns the smallest element in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::minmax",
    "link": "cpp/algorithm/minmax",
    "marks": {
      "since": "c++11"
    },
    "description": "returns the smaller and larger of two elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::minmax_element",
    "link": "cpp/algorithm/minmax_element",
    "marks": {
      "since": "c++11"
    },
    "description": "returns the smallest and the largest elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::minstd_rand",
    "link": "cpp/numeric/random/linear_congruential_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::linear_congruential_engine<std::uint_fast32_t, 48271, 0, 2147483647> Newer \"Minimum standard\", recommended by Park, Miller, and Stockmeyer in 1993"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::minstd_rand0",
    "link": "cpp/numeric/random/linear_congruential_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::linear_congruential_engine<std::uint_fast32_t, 16807, 0, 2147483647> Discovered in 1969 by Lewis, Goodman and Miller, adopted as \"Minimal standard\" in 1988 by Park and Miller"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::minus",
    "link": "cpp/utility/functional/minus",
    "marks": {},
    "description": "function object implementing x - y"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::mismatch",
    "link": "cpp/algorithm/mismatch",
    "marks": {},
    "description": "finds the first position where two ranges differ"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::mktime",
    "link": "cpp/chrono/c/mktime",
    "marks": {},
    "description": "converts calendar time to time since epoch"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::modf",
    "link": "cpp/numeric/math/modf",
    "marks": {},
    "description": "decomposes a number into integer and fractional parts"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::modff",
    "link": "cpp/numeric/math/modf",
    "marks": {
      "since": "c++11"
    },
    "description": "decomposes a number into integer and fractional parts"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::modfl",
    "link": "cpp/numeric/math/modf",
    "marks": {
      "since": "c++11"
    },
    "description": "decomposes a number into integer and fractional parts"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::modulus",
    "link": "cpp/utility/functional/modulus",
    "marks": {},
    "description": "function object implementing x % y"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::money_base",
    "link": "cpp/locale/money_base",
    "marks": {},
    "description": "defines monetary formatting patterns"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::money_get",
    "link": "cpp/locale/money_get",
    "marks": {},
    "description": "parses and constructs a monetary value from an input character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::moneypunct",
    "link": "cpp/locale/moneypunct",
    "marks": {},
    "description": "defines monetary formatting parameters used by std::money_get and std::money_put"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::moneypunct_byname",
    "link": "cpp/locale/moneypunct_byname",
    "marks": {},
    "description": "represents the system-supplied std::moneypunct for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::money_put",
    "link": "cpp/locale/money_put",
    "marks": {},
    "description": "formats a monetary value for output as a character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::monostate",
    "link": "cpp/utility/variant/monostate",
    "marks": {
      "since": "c++17"
    },
    "description": "placeholder type for use as the first alternative in a variant of non-default-constructible types"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::movable",
    "link": "cpp/concepts/movable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an object of a type can be moved and swapped"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::move",
    "link": "cpp/algorithm/move",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains an rvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::move",
    "link": "cpp/utility/move",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains an rvalue reference"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::move_backward",
    "link": "cpp/algorithm/move_backward",
    "marks": {
      "since": "c++11"
    },
    "description": "moves a range of elements to a new location in backwards order"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::move_constructible",
    "link": "cpp/concepts/move_constructible",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an object of a type can be move constructed"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::move_if_noexcept",
    "link": "cpp/utility/move_if_noexcept",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains an rvalue reference if the move constructor does not throw"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::move_iterator",
    "link": "cpp/iterator/move_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "iterator adaptor which dereferences to an rvalue"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::move_only_function",
    "link": "cpp/utility/functional/move_only_function",
    "marks": {
      "since": "c++23"
    },
    "description": "move-only wrapper of any callable object that supports qualifiers in a given call signature"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::move_sentinel",
    "link": "cpp/iterator/move_sentinel",
    "marks": {
      "since": "c++20"
    },
    "description": "sentinel adaptor for use with std::move_iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::mt19937",
    "link": "cpp/numeric/random/mersenne_twister_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::mersenne_twister_engine<std::uint_fast32_t, 32, 624, 397, 31, 0x9908b0df, 11, 0xffffffff, 7, 0x9d2c5680, 15, 0xefc60000, 18, 1812433253> 32-bit Mersenne Twister by Matsumoto and Nishimura, 1998"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::mt19937_64",
    "link": "cpp/numeric/random/mersenne_twister_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::mersenne_twister_engine<std::uint_fast64_t, 64, 312, 156, 31, 0xb5026f5aa96619e9, 29, 0x5555555555555555, 17, 0x71d67fffeda60000, 37, 0xfff7eee000000000, 43, 6364136223846793005> 64-bit Mersenne Twister by Matsumoto and Nishimura, 2000"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::mul_sat",
    "link": "cpp/numeric/mul_sat",
    "marks": {
      "since": "c++26"
    },
    "description": "saturating multiplication operation on two integers"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::multimap",
    "link": "cpp/container/multimap",
    "marks": {},
    "description": "collection of key-value pairs, sorted by keys"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::multiplies",
    "link": "cpp/utility/functional/multiplies",
    "marks": {},
    "description": "function object implementing x * y"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::multiset",
    "link": "cpp/container/multiset",
    "marks": {},
    "description": "collection of keys, sorted by keys"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::mutex",
    "link": "cpp/thread/mutex",
    "marks": {
      "since": "c++11"
    },
    "description": "provides basic mutual exclusion facility"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nan",
    "link": "cpp/numeric/math/nan",
    "marks": {
      "since": "c++11"
    },
    "description": "not-a-number (NaN)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nanf",
    "link": "cpp/numeric/math/nan",
    "marks": {
      "since": "c++11"
    },
    "description": "not-a-number (NaN)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nanl",
    "link": "cpp/numeric/math/nan",
    "marks": {
      "since": "c++11"
    },
    "description": "not-a-number (NaN)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::nano",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000000000>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nearbyint",
    "link": "cpp/numeric/math/nearbyint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nearbyintf",
    "link": "cpp/numeric/math/nearbyint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nearbyintl",
    "link": "cpp/numeric/math/nearbyint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::negate",
    "link": "cpp/utility/functional/negate",
    "marks": {},
    "description": "function object implementing -x"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::negation",
    "link": "cpp/types/negation",
    "marks": {
      "since": "c++17"
    },
    "description": "logical NOT metafunction"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::negation_v",
    "link": "cpp/types/negation",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::negation"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::negative_binomial_distribution",
    "link": "cpp/numeric/random/negative_binomial_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces integer values on a negative binomial distribution"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::nested_exception",
    "link": "cpp/error/nested_exception",
    "marks": {
      "since": "c++11"
    },
    "description": "a mixin type to capture and store current exceptions"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::new_handler",
    "link": "cpp/memory/new/new_handler",
    "marks": {},
    "description": "function pointer type of the new handler"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::next",
    "link": "cpp/iterator/next",
    "marks": {
      "since": "c++11"
    },
    "description": "increment an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::next_permutation",
    "link": "cpp/algorithm/next_permutation",
    "marks": {},
    "description": "generates the next greater lexicographic permutation of a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nextafter",
    "link": "cpp/numeric/math/nextafter",
    "marks": {
      "since": "c++11"
    },
    "description": "next representable floating-point value towards the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nextafterf",
    "link": "cpp/numeric/math/nextafter",
    "marks": {
      "since": "c++11"
    },
    "description": "next representable floating-point value towards the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nextafterl",
    "link": "cpp/numeric/math/nextafter",
    "marks": {
      "since": "c++11"
    },
    "description": "next representable floating-point value towards the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nexttoward",
    "link": "cpp/numeric/math/nextafter",
    "marks": {
      "since": "c++11"
    },
    "description": "next representable floating-point value towards the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nexttowardf",
    "link": "cpp/numeric/math/nextafter",
    "marks": {
      "since": "c++11"
    },
    "description": "next representable floating-point value towards the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nexttowardl",
    "link": "cpp/numeric/math/nextafter",
    "marks": {
      "since": "c++11"
    },
    "description": "next representable floating-point value towards the given value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::noemit_on_flush",
    "link": "cpp/io/manip/emit_on_flush",
    "marks": {
      "since": "c++20"
    },
    "description": "controls whether a stream's basic_syncbuf emits on flush"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::noboolalpha",
    "link": "cpp/io/manip/boolalpha",
    "marks": {},
    "description": "switches between textual and numeric representation of booleans"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::none_of",
    "link": "cpp/algorithm/all_any_none_of",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if a predicate is true for all, any or none of the elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::nontype",
    "link": "cpp/utility/nontype",
    "marks": {
      "since": "c++26"
    },
    "description": "value construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::nontype_t",
    "link": "cpp/utility/nontype",
    "marks": {
      "since": "c++26"
    },
    "description": "value construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::noop_coroutine",
    "link": "cpp/coroutine/noop_coroutine",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a coroutine handle that has no observable effects when resumed or destroyed"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::noop_coroutine_handle",
    "link": "cpp/coroutine/coroutine_handle",
    "marks": {
      "since": "c++20"
    },
    "description": "std::coroutine_handle<std::noop_coroutine_promise>, intended to refer to a no-op coroutine"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::noop_coroutine_promise",
    "link": "cpp/coroutine/noop_coroutine_promise",
    "marks": {
      "since": "c++20"
    },
    "description": "used for coroutines with no observable effects"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::norm",
    "link": "cpp/numeric/complex/norm",
    "marks": {},
    "description": "returns the squared magnitude"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::normal_distribution",
    "link": "cpp/numeric/random/normal_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a standard normal (Gaussian) distribution"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::noshowbase",
    "link": "cpp/io/manip/showbase",
    "marks": {},
    "description": "controls whether prefix is used to indicate numeric base"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::noshowpoint",
    "link": "cpp/io/manip/showpoint",
    "marks": {},
    "description": "controls whether decimal point is always included in floating-point representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::noshowpos",
    "link": "cpp/io/manip/showpos",
    "marks": {},
    "description": "controls whether the + sign used with non-negative numbers"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::noskipws",
    "link": "cpp/io/manip/skipws",
    "marks": {},
    "description": "controls whether leading whitespace is skipped on input"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::nostopstate",
    "link": "cpp/thread/stop_source/nostopstate",
    "marks": {
      "since": "c++20"
    },
    "description": "a tag used for stop_source to indicate no associated stop-state upon construction"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::nostopstate_t",
    "link": "cpp/thread/stop_source/nostopstate_t",
    "marks": {
      "since": "c++20"
    },
    "description": "a tag used for stop_source to indicate no associated stop-state upon construction"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::not_equal_to",
    "link": "cpp/utility/functional/not_equal_to",
    "marks": {},
    "description": "function object implementing x != y"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::not_fn",
    "link": "cpp/utility/functional/not_fn",
    "marks": {
      "since": "c++17"
    },
    "description": "creates a function object that returns the complement of the result of the function object it holds"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::nothrow",
    "link": "cpp/memory/new/nothrow",
    "marks": {},
    "description": "a tag used to select a non-throwing allocation function"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::nothrow_t",
    "link": "cpp/memory/new/nothrow_t",
    "marks": {},
    "description": "a tag used to select a non-throwing allocation function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::notify_all_at_thread_exit",
    "link": "cpp/thread/notify_all_at_thread_exit",
    "marks": {
      "since": "c++11"
    },
    "description": "schedules a call to notify_all to be invoked when this thread is completely finished"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nounitbuf",
    "link": "cpp/io/manip/unitbuf",
    "marks": {},
    "description": "controls whether output is flushed after each operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::nouppercase",
    "link": "cpp/io/manip/uppercase",
    "marks": {},
    "description": "controls whether uppercase characters are used with some output formats"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::nth_element",
    "link": "cpp/algorithm/nth_element",
    "marks": {},
    "description": "partially sorts the given range making sure that it is partitioned by the given element"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::nullopt",
    "link": "cpp/utility/optional/nullopt",
    "marks": {
      "since": "c++17"
    },
    "description": "an object of type nullopt_t"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::nullopt_t",
    "link": "cpp/utility/optional/nullopt_t",
    "marks": {
      "since": "c++17"
    },
    "description": "indicator of an std::optional that does not contain a value"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::nullptr_t",
    "link": "cpp/types/nullptr_t",
    "marks": {
      "since": "c++11"
    },
    "description": "the type of the null pointer literal nullptr"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::numeric_limits",
    "link": "cpp/types/numeric_limits",
    "marks": {},
    "description": "provides an interface to query properties of all fundamental numeric types"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::num_get",
    "link": "cpp/locale/num_get",
    "marks": {},
    "description": "parses numeric values from an input character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::numbers",
    "link": "cpp/symbol_index/numbers",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::e",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::e_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::e_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::egamma",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::egamma_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::egamma_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::inv_pi",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::inv_pi_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::inv_pi_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::inv_sqrt3",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::inv_sqrt3_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::inv_sqrt3_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::inv_sqrtpi",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::inv_sqrtpi_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::inv_sqrtpi_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::ln10",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::ln10_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::ln10_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::ln2",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::ln2_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::ln2_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::log10e",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::log10e_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::log10e_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::log2e",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::log2e_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::log2e_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::phi",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::phi_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::phi_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::pi",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::pi_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::pi_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::sqrt2",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::sqrt2_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::sqrt2_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::numbers::sqrt3",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    },
    "description": "std::numbers::sqrt3_v<double>"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::numbers::sqrt3_v",
    "link": "cpp/numeric/constants",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::numpunct",
    "link": "cpp/locale/numpunct",
    "marks": {},
    "description": "defines numeric punctuation rules"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::numpunct_byname",
    "link": "cpp/locale/numpunct_byname",
    "marks": {},
    "description": "represents the system-supplied std::numpunct for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::num_put",
    "link": "cpp/locale/num_put",
    "marks": {},
    "description": "formats numeric values for output as character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::oct",
    "link": "cpp/io/manip/hex",
    "marks": {},
    "description": "changes the base used for integer I/O"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::once_flag",
    "link": "cpp/thread/once_flag",
    "marks": {
      "since": "c++11"
    },
    "description": "helper object to ensure that call_once invokes the function only once"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ofstream",
    "link": "cpp/io/basic_ofstream",
    "marks": {},
    "description": "std::basic_ofstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::optional",
    "link": "cpp/utility/optional",
    "marks": {
      "since": "c++17"
    },
    "description": "a wrapper that may or may not hold an object"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ospanstream",
    "link": "cpp/io/basic_ospanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_ospanstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ostream",
    "link": "cpp/io/basic_ostream",
    "marks": {},
    "description": "std::basic_ostream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ostreambuf_iterator",
    "link": "cpp/iterator/ostreambuf_iterator",
    "marks": {},
    "description": "output iterator that writes to std::basic_streambuf"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ostream_iterator",
    "link": "cpp/iterator/ostream_iterator",
    "marks": {},
    "description": "output iterator that writes to std::basic_ostream"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ostringstream",
    "link": "cpp/io/basic_ostringstream",
    "marks": {},
    "description": "std::basic_ostringstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ostrstream",
    "link": "cpp/io/ostrstream",
    "marks": {
      "deprecated": "c++98"
    },
    "description": "implements character array output operations"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::osyncstream",
    "link": "cpp/io/basic_osyncstream",
    "marks": {
      "since": "c++20"
    },
    "description": "std::basic_osyncstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::out_of_range",
    "link": "cpp/error/out_of_range",
    "marks": {},
    "description": "exception class to report arguments outside of expected range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::out_ptr",
    "link": "cpp/memory/out_ptr_t/out_ptr",
    "marks": {
      "since": "c++23"
    },
    "description": "creates an out_ptr_t with an associated smart pointer and resetting arguments"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::out_ptr_t",
    "link": "cpp/memory/out_ptr_t",
    "marks": {
      "since": "c++23"
    },
    "description": "interoperates with foreign pointer setters and resets a smart pointer on destruction"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::output_iterator",
    "link": "cpp/iterator/output_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is an output iterator for a given value type, that is, values of that type can be written to it and it can be both pre- and post-incremented"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::output_iterator_tag",
    "link": "cpp/iterator/iterator_tags",
    "marks": {},
    "description": "empty class types used to indicate iterator categories"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::overflow_error",
    "link": "cpp/error/overflow_error",
    "marks": {},
    "description": "exception class to report arithmetic overflows"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::owner_less",
    "link": "cpp/memory/owner_less",
    "marks": {
      "since": "c++11"
    },
    "description": "provides mixed-type owner-based ordering of shared and weak pointers"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::packaged_task",
    "link": "cpp/thread/packaged_task",
    "marks": {
      "since": "c++11"
    },
    "description": "packages a function to store its return value for asynchronous retrieval"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::pair",
    "link": "cpp/utility/pair",
    "marks": {},
    "description": "implements binary tuple, i.e. a pair of values"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::partial_order",
    "link": "cpp/utility/compare/partial_order",
    "marks": {
      "since": "c++20"
    },
    "description": "performs 3-way comparison and produces a result of type std::partial_ordering"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::partial_ordering",
    "link": "cpp/utility/compare/partial_ordering",
    "marks": {
      "since": "c++20"
    },
    "description": "the result type of 3-way comparison that supports all 6 operators, is not substitutable, and allows incomparable values"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::partial_sort",
    "link": "cpp/algorithm/partial_sort",
    "marks": {},
    "description": "sorts the first N elements of a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::partial_sort_copy",
    "link": "cpp/algorithm/partial_sort_copy",
    "marks": {},
    "description": "copies and partially sorts a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::partial_sum",
    "link": "cpp/algorithm/partial_sum",
    "marks": {},
    "description": "computes the partial sum of a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::partition",
    "link": "cpp/algorithm/partition",
    "marks": {},
    "description": "divides a range of elements into two groups"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::partition_copy",
    "link": "cpp/algorithm/partition_copy",
    "marks": {
      "since": "c++11"
    },
    "description": "copies a range dividing the elements into two groups"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::partition_point",
    "link": "cpp/algorithm/partition_point",
    "marks": {
      "since": "c++11"
    },
    "description": "locates the partition point of a partitioned range"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::permutable",
    "link": "cpp/iterator/permutable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies the common requirements of algorithms that reorder elements in place"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::perror",
    "link": "cpp/io/c/perror",
    "marks": {},
    "description": "displays a character string corresponding of the current error to stderr"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::peta",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000000000000000, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pico",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000000000000>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::piecewise_constant_distribution",
    "link": "cpp/numeric/random/piecewise_constant_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values distributed on constant subintervals"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::piecewise_construct",
    "link": "cpp/utility/piecewise_construct",
    "marks": {
      "since": "c++11"
    },
    "description": "piecewise construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::piecewise_construct_t",
    "link": "cpp/utility/piecewise_construct_t",
    "marks": {
      "since": "c++11"
    },
    "description": "piecewise construction tag"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::piecewise_linear_distribution",
    "link": "cpp/numeric/random/piecewise_linear_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values distributed on defined subintervals"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::placeholders",
    "link": "cpp/symbol_index/placeholders",
    "marks": {},
    "description": "Provides placeholders for the unbound arguments in a std::bind expression"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::placeholders::_1, _2, ..., _N",
    "link": "cpp/utility/functional/placeholders",
    "marks": {
      "since": "c++11"
    },
    "description": "placeholders for the unbound arguments in a std::bind expression"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::plus",
    "link": "cpp/utility/functional/plus",
    "marks": {},
    "description": "function object implementing x + y"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::pmr",
    "link": "cpp/symbol_index/pmr",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::pmr::basic_string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++17"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::cmatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++17"
    },
    "description": "std::cmatch using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::deque",
    "link": "cpp/container/deque",
    "marks": {
      "since": "c++17"
    },
    "description": "std::deque using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::forward_list",
    "link": "cpp/container/forward_list",
    "marks": {
      "since": "c++17"
    },
    "description": "std::forward_list using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::pmr::get_default_resource",
    "link": "cpp/memory/get_default_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "gets the default std::pmr::memory_resource"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::list",
    "link": "cpp/container/list",
    "marks": {
      "since": "c++17"
    },
    "description": "std::list using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::map",
    "link": "cpp/container/map",
    "marks": {
      "since": "c++17"
    },
    "description": "std::map using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::match_results",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++17"
    },
    "description": "std::match_results using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::pmr::memory_resource",
    "link": "cpp/memory/memory_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "an abstract interface for classes that encapsulate memory resources"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::pmr::monotonic_buffer_resource",
    "link": "cpp/memory/monotonic_buffer_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "a special-purpose std::pmr::memory_resource that releases the allocated memory only when the resource is destroyed"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::multimap",
    "link": "cpp/container/multimap",
    "marks": {
      "since": "c++17"
    },
    "description": "std::multimap using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::multiset",
    "link": "cpp/container/multiset",
    "marks": {
      "since": "c++17"
    },
    "description": "std::multiset using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::pmr::new_delete_resource",
    "link": "cpp/memory/new_delete_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "returns a static program-wide std::pmr::memory_resource that uses the global operator new and operator delete to allocate and deallocate memory"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::pmr::null_memory_resource",
    "link": "cpp/memory/null_memory_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "returns a static std::pmr::memory_resource that performs no allocation"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::pmr::polymorphic_allocator",
    "link": "cpp/memory/polymorphic_allocator",
    "marks": {
      "since": "c++17"
    },
    "description": "an allocator that supports run-time polymorphism based on the std::pmr::memory_resource it is constructed with"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::pmr::pool_options",
    "link": "cpp/memory/pool_options",
    "marks": {
      "since": "c++17"
    },
    "description": "a set of constructor options for pool resources"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::set",
    "link": "cpp/container/set",
    "marks": {
      "since": "c++17"
    },
    "description": "std::set using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::pmr::set_default_resource",
    "link": "cpp/memory/set_default_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "sets the default std::pmr::memory_resource"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::smatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++17"
    },
    "description": "std::smatch using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::stacktrace",
    "link": "cpp/utility/basic_stacktrace",
    "marks": {
      "since": "c++23"
    },
    "description": "std::pmr::basic_stacktrace< std::pmr::polymorphic_allocator<std::stacktrace_entry>>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++17"
    },
    "description": "std::pmr::basic_string<char>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::pmr::synchronized_pool_resource",
    "link": "cpp/memory/synchronized_pool_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "a thread-safe std::pmr::memory_resource for managing allocations in pools of different block sizes"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::u16string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++17"
    },
    "description": "std::pmr::basic_string<char16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::u32string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++17"
    },
    "description": "std::pmr::basic_string<char32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::u8string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++17"
    },
    "description": "std::pmr::basic_string<char8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::unordered_map",
    "link": "cpp/container/unordered_map",
    "marks": {
      "since": "c++17"
    },
    "description": "std::unordered_map using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::unordered_multimap",
    "link": "cpp/container/unordered_multimap",
    "marks": {
      "since": "c++17"
    },
    "description": "std::unordered_multimap using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::unordered_multiset",
    "link": "cpp/container/unordered_multiset",
    "marks": {
      "since": "c++17"
    },
    "description": "std::unordered_multiset using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::unordered_set",
    "link": "cpp/container/unordered_set",
    "marks": {
      "since": "c++17"
    },
    "description": "std::unordered_set using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::pmr::unsynchronized_pool_resource",
    "link": "cpp/memory/unsynchronized_pool_resource",
    "marks": {
      "since": "c++17"
    },
    "description": "a thread-unsafe std::pmr::memory_resource for managing allocations in pools of different block sizes"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::vector",
    "link": "cpp/container/vector",
    "marks": {
      "since": "c++17"
    },
    "description": "std::vector using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::wcmatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++17"
    },
    "description": "std::wcmatch using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::wsmatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++17"
    },
    "description": "std::wsmatch using a polymorphic allocator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::pmr::wstring",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++17"
    },
    "description": "std::pmr::basic_string<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::pointer_traits",
    "link": "cpp/memory/pointer_traits",
    "marks": {
      "since": "c++11"
    },
    "description": "provides information about pointer-like types"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::poisson_distribution",
    "link": "cpp/numeric/random/poisson_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces integer values on a Poisson distribution"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::polar",
    "link": "cpp/numeric/complex/polar",
    "marks": {},
    "description": "constructs a complex number from magnitude and phase angle"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::pop_heap",
    "link": "cpp/algorithm/pop_heap",
    "marks": {},
    "description": "removes the largest element from a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::popcount",
    "link": "cpp/numeric/popcount",
    "marks": {
      "since": "c++20"
    },
    "description": "counts the number of 1 bits in an unsigned integer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::pow",
    "link": "cpp/numeric/math/pow",
    "marks": {},
    "description": "raises a number to the given power (xy)"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::pow",
    "link": "cpp/numeric/complex/pow",
    "marks": {},
    "note": "std::complex",
    "description": "complex power, one or both arguments may be a complex number"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::pow",
    "link": "cpp/numeric/valarray/pow",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::pow to two valarrays or a valarray and a value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::powf",
    "link": "cpp/numeric/math/pow",
    "marks": {
      "since": "c++11"
    },
    "description": "raises a number to the given power (xy)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::powl",
    "link": "cpp/numeric/math/pow",
    "marks": {
      "since": "c++11"
    },
    "description": "raises a number to the given power (xy)"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::predicate",
    "link": "cpp/concepts/predicate",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type is a Boolean predicate"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::prev",
    "link": "cpp/iterator/prev",
    "marks": {
      "since": "c++11"
    },
    "description": "decrement an iterator"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::prev_permutation",
    "link": "cpp/algorithm/prev_permutation",
    "marks": {},
    "description": "generates the next smaller lexicographic permutation of a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::print",
    "link": "cpp/io/print",
    "marks": {
      "since": "c++23"
    },
    "description": "prints to stdout or a file stream using formatted representation of the arguments"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::printf",
    "link": "cpp/io/c/fprintf",
    "marks": {},
    "description": "prints formatted output to stdout, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::println",
    "link": "cpp/io/println",
    "marks": {
      "since": "c++23"
    },
    "description": "same as std::print except that each print is terminated by additional new line"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::priority_queue",
    "link": "cpp/container/priority_queue",
    "marks": {},
    "description": "adapts a container to provide priority queue"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::proj",
    "link": "cpp/numeric/complex/proj",
    "marks": {
      "since": "c++11"
    },
    "description": "returns the projection onto the Riemann sphere"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::projected",
    "link": "cpp/iterator/projected",
    "marks": {
      "since": "c++20"
    },
    "description": "helper template for specifying the constraints on algorithms that accept projections"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::promise",
    "link": "cpp/thread/promise",
    "marks": {
      "since": "c++11"
    },
    "description": "stores a value for asynchronous retrieval"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ptrdiff_t",
    "link": "cpp/types/ptrdiff_t",
    "marks": {},
    "description": "signed integer type returned when subtracting two pointers"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::push_heap",
    "link": "cpp/algorithm/push_heap",
    "marks": {},
    "description": "adds an element to a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::put_money",
    "link": "cpp/io/manip/put_money",
    "marks": {
      "since": "c++11"
    },
    "description": "formats and outputs a monetary value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::put_time",
    "link": "cpp/io/manip/put_time",
    "marks": {
      "since": "c++11"
    },
    "description": "formats and outputs a date/time value according to the specified format"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::putc",
    "link": "cpp/io/c/fputc",
    "marks": {},
    "description": "writes a character to a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::putchar",
    "link": "cpp/io/c/putchar",
    "marks": {},
    "description": "writes a character to stdout"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::puts",
    "link": "cpp/io/c/puts",
    "marks": {},
    "description": "writes a character string to stdout"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::putwc",
    "link": "cpp/io/c/fputwc",
    "marks": {},
    "description": "writes a wide character to a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::putwchar",
    "link": "cpp/io/c/putwchar",
    "marks": {},
    "description": "writes a wide character to stdout"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::qsort",
    "link": "cpp/algorithm/qsort",
    "marks": {},
    "description": "sorts a range of elements with unspecified type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::quecto",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++26"
    },
    "description": "std::ratio<1, 1000000000000000000000000000000>, if std::intmax_t can represent the denominator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::queue",
    "link": "cpp/container/queue",
    "marks": {},
    "description": "adapts a container to provide queue (FIFO data structure)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::quetta",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++26"
    },
    "description": "std::ratio<1000000000000000000000000000000, 1>, if std::intmax_t can represent the numerator"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::quick_exit",
    "link": "cpp/utility/program/quick_exit",
    "marks": {
      "since": "c++11"
    },
    "description": "causes quick program termination without completely cleaning up"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::quoted",
    "link": "cpp/io/manip/quoted",
    "marks": {
      "since": "c++14"
    },
    "description": "inserts and extracts quoted strings with embedded spaces"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::raise",
    "link": "cpp/utility/program/raise",
    "marks": {},
    "description": "runs the signal handler for particular signal"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rand",
    "link": "cpp/numeric/random/rand",
    "marks": {},
    "description": "generates a pseudo-random number"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::random_access_iterator",
    "link": "cpp/iterator/random_access_iterator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a bidirectional_iterator is a random-access iterator, supporting advancement in constant time and subscripting"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::random_access_iterator_tag",
    "link": "cpp/iterator/iterator_tags",
    "marks": {},
    "description": "empty class types used to indicate iterator categories"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::random_device",
    "link": "cpp/numeric/random/random_device",
    "marks": {
      "since": "c++11"
    },
    "description": "non-deterministic random number generator using hardware entropy source"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::range_error",
    "link": "cpp/error/range_error",
    "marks": {},
    "description": "exception class to report range errors in internal computations"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::range_format",
    "link": "cpp/utility/format/range_format",
    "marks": {
      "since": "c++23"
    },
    "description": "specifies how a range should be formatted"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::range_formatter",
    "link": "cpp/utility/format/range_formatter",
    "marks": {
      "since": "c++23"
    },
    "description": "class template that helps implementing std::formatter specializations for range types"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::ranges",
    "link": "cpp/symbol_index/ranges",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::adjacent_find",
    "link": "cpp/algorithm/ranges/adjacent_find",
    "marks": {
      "since": "c++23"
    },
    "description": "finds the first two adjacent items that are equal (or satisfy a given predicate)"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::adjacent_transform_view",
    "link": "cpp/ranges/adjacent_transform_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of results of application of a transformation function to adjacent elements of the adapted view"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::adjacent_view",
    "link": "cpp/ranges/adjacent_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of references to adjacent elements of the adapted view"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::advance",
    "link": "cpp/iterator/ranges/advance",
    "marks": {
      "since": "c++20"
    },
    "description": "advances an iterator by given distance or to a given bound"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::all_of",
    "link": "cpp/algorithm/ranges/all any none of",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a predicate is true for all, any or none of the elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::any_of",
    "link": "cpp/algorithm/ranges/all any none of",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a predicate is true for all, any or none of the elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::as_const_view",
    "link": "cpp/ranges/as_const_view",
    "marks": {
      "since": "c++23"
    },
    "description": "converts a view into a constant_range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::as_rvalue_view",
    "link": "cpp/ranges/as_rvalue_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view of a sequence that casts each element to an rvalue"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::basic_istream_view",
    "link": "cpp/ranges/basic_istream_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the elements obtained by successive application of operator>> on the associated input stream"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::begin",
    "link": "cpp/ranges/begin",
    "marks": {
      "since": "c++20"
    },
    "description": "returns an iterator to the beginning of a range"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::bidirectional_range",
    "link": "cpp/ranges/bidirectional_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies a range whose iterator type satisfies bidirectional_iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::binary_transform_result",
    "link": "cpp/algorithm/ranges/transform",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::binary_transform"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::borrowed_iterator_t",
    "link": "cpp/ranges/borrowed_iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains iterator type or subrange type of a borrowed_range"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::borrowed_range",
    "link": "cpp/ranges/borrowed_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is a range and iterators obtained from an expression of it can be safely returned without danger of dangling"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::borrowed_subrange_t",
    "link": "cpp/ranges/borrowed_iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains iterator type or subrange type of a borrowed_range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::cartesian_product_view",
    "link": "cpp/ranges/cartesian_product_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of results calculated by the n-ary cartesian product of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::cbegin",
    "link": "cpp/ranges/cbegin",
    "marks": {
      "since": "c++20"
    },
    "description": "returns an iterator to the beginning of a read-only range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::cdata",
    "link": "cpp/ranges/cdata",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains a pointer to the beginning of a read-only contiguous range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::chunk_by_view",
    "link": "cpp/ranges/chunk_by_view",
    "marks": {
      "since": "c++23"
    },
    "description": "splits the view into subranges between each pair of adjacent elements for which the given predicate returns false"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::chunk_view",
    "link": "cpp/ranges/chunk_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a range of views that are N-sized non-overlapping successive chunks of the elements of another view"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::cend",
    "link": "cpp/ranges/cend",
    "marks": {
      "since": "c++20"
    },
    "description": "returns a sentinel indicating the end of a read-only range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::clamp",
    "link": "cpp/algorithm/ranges/clamp",
    "marks": {
      "since": "c++20"
    },
    "description": "clamps a value between a pair of boundary values"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::common_range",
    "link": "cpp/ranges/common_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a range has identical iterator and sentinel types"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::common_view",
    "link": "cpp/ranges/common_view",
    "marks": {
      "since": "c++20"
    },
    "description": "converts a view into a common_range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::concat_view",
    "link": "cpp/ranges/concat_view",
    "marks": {
      "since": "c++26"
    },
    "description": "a view consisting of concatenation of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::const_iterator_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++23"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::constant_range",
    "link": "cpp/ranges/constant_range",
    "marks": {
      "since": "c++23"
    },
    "description": "specifies that a range has read-only elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::construct_at",
    "link": "cpp/memory/ranges/construct_at",
    "marks": {
      "since": "c++20"
    },
    "description": "creates an object at a given address"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::contains",
    "link": "cpp/algorithm/ranges/contains",
    "marks": {
      "since": "c++23"
    },
    "description": "checks if the range contains the given element or subrange"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::contains_subrange",
    "link": "cpp/algorithm/ranges/contains",
    "marks": {
      "since": "c++23"
    },
    "description": "checks if the range contains the given element or subrange"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::contiguous_range",
    "link": "cpp/ranges/contiguous_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies a range whose iterator type satisfies contiguous_iterator"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::copy",
    "link": "cpp/algorithm/ranges/copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range of elements to a new location"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::copy_backward",
    "link": "cpp/algorithm/ranges/copy_backward",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range of elements in backwards order"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::copy_backward_result",
    "link": "cpp/algorithm/ranges/copy_backward",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::copy_backward"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::copy_if",
    "link": "cpp/algorithm/ranges/copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range of elements to a new location"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::copy_if_result",
    "link": "cpp/algorithm/ranges/copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::copy_if"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::copy_n",
    "link": "cpp/algorithm/ranges/copy_n",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a number of elements to a new location"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::copy_n_result",
    "link": "cpp/algorithm/ranges/copy_n",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::copy_n"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::copy_result",
    "link": "cpp/algorithm/ranges/copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::copy"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::count",
    "link": "cpp/algorithm/ranges/count",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the number of elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::count_if",
    "link": "cpp/algorithm/ranges/count",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the number of elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::crbegin",
    "link": "cpp/ranges/crbegin",
    "marks": {
      "since": "c++20"
    },
    "description": "returns a reverse iterator to a read-only range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::crend",
    "link": "cpp/ranges/crend",
    "marks": {
      "since": "c++20"
    },
    "description": "returns a reverse end iterator to a read-only range"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::dangling",
    "link": "cpp/ranges/dangling",
    "marks": {
      "since": "c++20"
    },
    "description": "a placeholder type indicating that an iterator or a subrange should not be returned since it would be dangling"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::data",
    "link": "cpp/ranges/data",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains a pointer to the beginning of a contiguous range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::destroy",
    "link": "cpp/memory/ranges/destroy",
    "marks": {
      "since": "c++20"
    },
    "description": "destroys a range of objects"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::destroy_at",
    "link": "cpp/memory/ranges/destroy_at",
    "marks": {
      "since": "c++20"
    },
    "description": "destroys an object at a given address"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::destroy_n",
    "link": "cpp/memory/ranges/destroy_n",
    "marks": {
      "since": "c++20"
    },
    "description": "destroys a number of objects in a range"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ranges::disable_sized_range",
    "link": "cpp/ranges/sized_range",
    "marks": {
      "since": "c++20"
    },
    "description": "allows use of range types that provide a size function (either as a member or as a non-member) but do not in fact model sized_range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::distance",
    "link": "cpp/iterator/ranges/distance",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the distance between an iterator and a sentinel, or between the beginning and end of a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::drop_view",
    "link": "cpp/ranges/drop_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of elements of another view, skipping the first N elements"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::drop_while_view",
    "link": "cpp/ranges/drop_while_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the elements of another view, skipping the initial subsequence of elements until the first element where the predicate returns false"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::elements_view",
    "link": "cpp/ranges/elements_view",
    "marks": {
      "since": "c++20"
    },
    "description": "takes a view consisting of tuple-like values and a number N and produces a view of Nth element of each tuple"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::empty",
    "link": "cpp/ranges/empty",
    "marks": {
      "since": "c++20"
    },
    "description": "checks whether a range is empty"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::empty_view",
    "link": "cpp/ranges/empty_view",
    "marks": {
      "since": "c++20"
    },
    "description": "an empty view with no elements"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ranges::enable_borrowed_range",
    "link": "cpp/ranges/borrowed_range",
    "marks": {
      "since": "c++20"
    },
    "description": "used to indicate whether a range is a borrowed_range"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ranges::enable_view",
    "link": "cpp/ranges/view",
    "marks": {
      "since": "c++20"
    },
    "description": "used to indicate whether a range is a view"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::end",
    "link": "cpp/ranges/end",
    "marks": {
      "since": "c++20"
    },
    "description": "returns a sentinel indicating the end of a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::ends_with",
    "link": "cpp/algorithm/ranges/ends_with",
    "marks": {
      "since": "c++23"
    },
    "description": "checks whether a range ends with another range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::equal",
    "link": "cpp/algorithm/ranges/equal",
    "marks": {
      "since": "c++20"
    },
    "description": "determines if two sets of elements are the same"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::equal_to",
    "link": "cpp/utility/functional/ranges/equal_to",
    "marks": {
      "since": "c++20"
    },
    "description": "constrained function object implementing x == y"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fill",
    "link": "cpp/algorithm/ranges/fill",
    "marks": {
      "since": "c++20"
    },
    "description": "assigns a range of elements a certain value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fill_n",
    "link": "cpp/algorithm/ranges/fill_n",
    "marks": {
      "since": "c++20"
    },
    "description": "assigns a value to a number of elements"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::filter_view",
    "link": "cpp/ranges/filter_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that consists of the elements of a range that satisfies a predicate"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find",
    "link": "cpp/algorithm/ranges/find",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the first element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find_end",
    "link": "cpp/algorithm/ranges/find_end",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the last sequence of elements in a certain range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find_first_of",
    "link": "cpp/algorithm/ranges/find_first_of",
    "marks": {
      "since": "c++20"
    },
    "description": "searches for any one of a set of elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find_if",
    "link": "cpp/algorithm/ranges/find",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the first element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find_if_not",
    "link": "cpp/algorithm/ranges/find",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the first element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find_last",
    "link": "cpp/algorithm/ranges/find_last",
    "marks": {
      "since": "c++23"
    },
    "description": "finds the last element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find_last_if",
    "link": "cpp/algorithm/ranges/find_last",
    "marks": {
      "since": "c++23"
    },
    "description": "finds the last element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::find_last_if_not",
    "link": "cpp/algorithm/ranges/find_last",
    "marks": {
      "since": "c++23"
    },
    "description": "finds the last element satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fold_left",
    "link": "cpp/algorithm/ranges/fold_left",
    "marks": {
      "since": "c++23"
    },
    "description": "left-folds a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fold_left_first",
    "link": "cpp/algorithm/ranges/fold_left_first",
    "marks": {
      "since": "c++23"
    },
    "description": "left-folds a range of elements using the first element as an initial value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fold_left_first_with_iter",
    "link": "cpp/algorithm/ranges/fold_left_first_with_iter",
    "marks": {
      "since": "c++23"
    },
    "description": "left-folds a range of elements using the first element as an initial value, and returns a pair (iterator, optional)"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fold_left_with_iter",
    "link": "cpp/algorithm/ranges/fold_left_with_iter",
    "marks": {
      "since": "c++23"
    },
    "description": "left-folds a range of elements, and returns a pair (iterator, value)"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fold_right",
    "link": "cpp/algorithm/ranges/fold_right",
    "marks": {
      "since": "c++23"
    },
    "description": "right-folds a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::fold_right_last",
    "link": "cpp/algorithm/ranges/fold_right_last",
    "marks": {
      "since": "c++23"
    },
    "description": "right-folds a range of elements using the last element as an initial value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::for_each",
    "link": "cpp/algorithm/ranges/for_each",
    "marks": {
      "since": "c++20"
    },
    "description": "applies a function to a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::for_each_n",
    "link": "cpp/algorithm/ranges/for_each_n",
    "marks": {
      "since": "c++20"
    },
    "description": "applies a function object to the first N elements of a sequence"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::for_each_n_result",
    "link": "cpp/algorithm/ranges/for_each_n",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::for_each_n"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::for_each_result",
    "link": "cpp/algorithm/ranges/for_each",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::for_each"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::forward_range",
    "link": "cpp/ranges/forward_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies a range whose iterator type satisfies forward_iterator"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::generate",
    "link": "cpp/algorithm/ranges/generate",
    "marks": {
      "since": "c++20"
    },
    "description": "saves the result of a function in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::generate_n",
    "link": "cpp/algorithm/ranges/generate_n",
    "marks": {
      "since": "c++20"
    },
    "description": "saves the result of N applications of a function"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::ranges::get",
    "link": "cpp/ranges/subrange/get",
    "marks": {
      "since": "c++20"
    },
    "note": "std::ranges::subrange",
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::greater",
    "link": "cpp/utility/functional/ranges/greater",
    "marks": {
      "since": "c++20"
    },
    "description": "constrained function object implementing x > y"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::greater_equal",
    "link": "cpp/utility/functional/ranges/greater_equal",
    "marks": {
      "since": "c++20"
    },
    "description": "constrained function object implementing x >= y"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::in_found_result",
    "link": "cpp/algorithm/ranges/return_types/in_found_result",
    "marks": {
      "since": "c++20"
    },
    "description": "provides a way to store an iterator and a boolean flag as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::in_fun_result",
    "link": "cpp/algorithm/ranges/return_types/in_fun_result",
    "marks": {
      "since": "c++20"
    },
    "description": "provides a way to store an iterator and a function object as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::in_in_out_result",
    "link": "cpp/algorithm/ranges/return_types/in_in_out_result",
    "marks": {
      "since": "c++20"
    },
    "description": "provides a way to store three iterators as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::in_in_result",
    "link": "cpp/algorithm/ranges/return_types/in_in_result",
    "marks": {
      "since": "c++20"
    },
    "description": "provides a way to store two iterators as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::in_out_out_result",
    "link": "cpp/algorithm/ranges/return_types/in_out_out_result",
    "marks": {
      "since": "c++20"
    },
    "description": "provides a way to store three iterators as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::in_out_result",
    "link": "cpp/algorithm/ranges/return_types/in_out_result",
    "marks": {
      "since": "c++20"
    },
    "description": "provides a way to store two iterators as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::in_value_result",
    "link": "cpp/algorithm/ranges/return_types/in_value_result",
    "marks": {
      "since": "c++23"
    },
    "description": "provides a way to store an iterator and a value as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::includes",
    "link": "cpp/algorithm/ranges/includes",
    "marks": {
      "since": "c++20"
    },
    "description": "returns true if one sequence is a subsequence of another"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::inplace_merge",
    "link": "cpp/algorithm/ranges/inplace_merge",
    "marks": {
      "since": "c++20"
    },
    "description": "merges two ordered ranges in-place"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::input_range",
    "link": "cpp/ranges/input_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies a range whose iterator type satisfies input_iterator"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::iota",
    "link": "cpp/algorithm/ranges/iota",
    "marks": {
      "since": "c++23"
    },
    "description": "fills a range with successive increments of the starting value"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::iota_result",
    "link": "cpp/algorithm/ranges/iota",
    "marks": {
      "since": "c++23"
    },
    "description": "Return type of std::ranges::iota"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::iota_view",
    "link": "cpp/ranges/iota_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of a sequence generated by repeatedly incrementing an initial value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::is_heap",
    "link": "cpp/algorithm/ranges/is_heap",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if the given range is a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::is_heap_until",
    "link": "cpp/algorithm/ranges/is_heap_until",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the largest subrange that is a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::is_partitioned",
    "link": "cpp/algorithm/ranges/is_partitioned",
    "marks": {
      "since": "c++20"
    },
    "description": "determines if the range is partitioned by the given predicate"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::is_permutation",
    "link": "cpp/algorithm/ranges/is_permutation",
    "marks": {
      "since": "c++20"
    },
    "description": "determines if a sequence is a permutation of another sequence"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::is_sorted",
    "link": "cpp/algorithm/ranges/is_sorted",
    "marks": {
      "since": "c++20"
    },
    "description": "checks whether a range is sorted into ascending order"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::is_sorted_until",
    "link": "cpp/algorithm/ranges/is_sorted_until",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the largest sorted subrange"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::istream_view",
    "link": "cpp/ranges/basic_istream_view",
    "marks": {
      "since": "c++20"
    },
    "description": "std::ranges::basic_istream_view<_, char>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::iter_move",
    "link": "cpp/iterator/ranges/iter_move",
    "marks": {
      "since": "c++20"
    },
    "description": "casts the result of dereferencing an object to its associated rvalue reference type"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::iter_swap",
    "link": "cpp/iterator/ranges/iter_swap",
    "marks": {
      "since": "c++20"
    },
    "description": "swaps the values referenced by two dereferenceable objects"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::iterator_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::join_view",
    "link": "cpp/ranges/join_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the sequence obtained from flattening a view of ranges"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::join_with_view",
    "link": "cpp/ranges/join_with_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of the sequence obtained from flattening a view of ranges, with the delimiter in between elements"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::keys_view",
    "link": "cpp/ranges/keys_view",
    "marks": {
      "since": "c++20"
    },
    "description": "takes a view consisting of pair-like values and produces a view of the first elements of each pair"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::lazy_split_view",
    "link": "cpp/ranges/lazy_split_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view over the subranges obtained from splitting another view using a delimiter"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::less",
    "link": "cpp/utility/functional/ranges/less",
    "marks": {
      "since": "c++20"
    },
    "description": "constrained function object implementing x < y"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::less_equal",
    "link": "cpp/utility/functional/ranges/less_equal",
    "marks": {
      "since": "c++20"
    },
    "description": "constrained function object implementing x <= y"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::lexicographical_compare",
    "link": "cpp/algorithm/ranges/lexicographical_compare",
    "marks": {
      "since": "c++20"
    },
    "description": "returns true if one range is lexicographically less than another"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::make_heap",
    "link": "cpp/algorithm/ranges/make_heap",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a max heap out of a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::max",
    "link": "cpp/algorithm/ranges/max",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the greater of the given values"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::max_element",
    "link": "cpp/algorithm/ranges/max_element",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the largest element in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::merge",
    "link": "cpp/algorithm/ranges/merge",
    "marks": {
      "since": "c++20"
    },
    "description": "merges two sorted ranges"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::merge_result",
    "link": "cpp/algorithm/ranges/merge",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::merge"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::min",
    "link": "cpp/algorithm/ranges/min",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the smaller of the given values"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::min_element",
    "link": "cpp/algorithm/ranges/min_element",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the smallest element in a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::min_max_result",
    "link": "cpp/algorithm/ranges/return_types/min_max_result",
    "marks": {
      "since": "c++20"
    },
    "description": "provides a way to store two objects or references of the same type as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::minmax",
    "link": "cpp/algorithm/ranges/minmax",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the smaller and larger of two elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::minmax_element",
    "link": "cpp/algorithm/ranges/minmax_element",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the smallest and the largest elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::minmax_element_result",
    "link": "cpp/algorithm/ranges/minmax_element",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::minmax_element"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::minmax_result",
    "link": "cpp/algorithm/ranges/minmax",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::minmax"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::mismatch",
    "link": "cpp/algorithm/ranges/mismatch",
    "marks": {
      "since": "c++20"
    },
    "description": "finds the first position where two ranges differ"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::mismatch_result",
    "link": "cpp/algorithm/ranges/mismatch",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::mismatch"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::move",
    "link": "cpp/algorithm/ranges/move",
    "marks": {
      "since": "c++20"
    },
    "description": "moves a range of elements to a new location"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::move_backward",
    "link": "cpp/algorithm/ranges/move_backward",
    "marks": {
      "since": "c++20"
    },
    "description": "moves a range of elements to a new location in backwards order"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::move_backward_result",
    "link": "cpp/algorithm/ranges/move_backward",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::move_backward"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::move_result",
    "link": "cpp/algorithm/ranges/move",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::move"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::next",
    "link": "cpp/iterator/ranges/next",
    "marks": {
      "since": "c++20"
    },
    "description": "increment an iterator by a given distance or to a bound"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::next_permutation",
    "link": "cpp/algorithm/ranges/next_permutation",
    "marks": {
      "since": "c++20"
    },
    "description": "generates the next greater lexicographic permutation of a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::next_permutation_result",
    "link": "cpp/algorithm/ranges/next_permutation",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::next_permutation"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::none_of",
    "link": "cpp/algorithm/ranges/all any none of",
    "marks": {
      "since": "c++20"
    },
    "description": "checks if a predicate is true for all, any or none of the elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::not_equal_to",
    "link": "cpp/utility/functional/ranges/not_equal_to",
    "marks": {
      "since": "c++20"
    },
    "description": "constrained function object implementing x != y"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::nth_element",
    "link": "cpp/algorithm/ranges/nth_element",
    "marks": {
      "since": "c++20"
    },
    "description": "partially sorts the given range making sure that it is partitioned by the given element"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::out_value_result",
    "link": "cpp/algorithm/ranges/return_types/out_value_result",
    "marks": {
      "since": "c++23"
    },
    "description": "provides a way to store an iterator and a value as a single unit"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::output_range",
    "link": "cpp/ranges/output_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies a range whose iterator type satisfies output_iterator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::owning_view",
    "link": "cpp/ranges/owning_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view with unique ownership of some range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::partial_sort",
    "link": "cpp/algorithm/ranges/partial_sort",
    "marks": {
      "since": "c++20"
    },
    "description": "sorts the first N elements of a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::partial_sort_copy",
    "link": "cpp/algorithm/ranges/partial_sort_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies and partially sorts a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::partial_sort_copy_result",
    "link": "cpp/algorithm/ranges/partial_sort_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::partial_sort_copy"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::partition",
    "link": "cpp/algorithm/ranges/partition",
    "marks": {
      "since": "c++20"
    },
    "description": "divides a range of elements into two groups"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::partition_copy",
    "link": "cpp/algorithm/ranges/partition_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range dividing the elements into two groups"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::partition_copy_result",
    "link": "cpp/algorithm/ranges/partition_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::partition_copy"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::partition_point",
    "link": "cpp/algorithm/ranges/partition_point",
    "marks": {
      "since": "c++20"
    },
    "description": "locates the partition point of a partitioned range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::pop_heap",
    "link": "cpp/algorithm/ranges/pop_heap",
    "marks": {
      "since": "c++20"
    },
    "description": "removes the largest element from a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::prev",
    "link": "cpp/iterator/ranges/prev",
    "marks": {
      "since": "c++20"
    },
    "description": "decrement an iterator by a given distance or to a bound"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::prev_permutation",
    "link": "cpp/algorithm/ranges/prev_permutation",
    "marks": {
      "since": "c++20"
    },
    "description": "generates the next smaller lexicographic permutation of a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::prev_permutation_result",
    "link": "cpp/algorithm/ranges/prev_permutation",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::prev_permutation"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::push_heap",
    "link": "cpp/algorithm/ranges/push_heap",
    "marks": {
      "since": "c++20"
    },
    "description": "adds an element to a max heap"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::random_access_range",
    "link": "cpp/ranges/random_access_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies a range whose iterator type satisfies random_access_iterator"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::range",
    "link": "cpp/ranges/range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is a range, that is, it provides a begin iterator and an end sentinel"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::range_adaptor_closure",
    "link": "cpp/ranges/range_adaptor_closure",
    "marks": {
      "since": "c++23"
    },
    "description": "helper base class template for defining a range adaptor closure object"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::range_const_reference_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++23"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::range_difference_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::range_reference_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::range_rvalue_reference_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::range_size_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::range_value_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::rbegin",
    "link": "cpp/ranges/rbegin",
    "marks": {
      "since": "c++20"
    },
    "description": "returns a reverse iterator to a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::ref_view",
    "link": "cpp/ranges/ref_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view of the elements of some other range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::remove",
    "link": "cpp/algorithm/ranges/remove",
    "marks": {
      "since": "c++20"
    },
    "description": "removes elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::remove_copy",
    "link": "cpp/algorithm/ranges/remove_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range of elements omitting those that satisfy specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::remove_copy_if",
    "link": "cpp/algorithm/ranges/remove_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range of elements omitting those that satisfy specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::remove_copy_if_result",
    "link": "cpp/algorithm/ranges/remove_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::remove_copy_if"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::remove_copy_result",
    "link": "cpp/algorithm/ranges/remove_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::remove_copy"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::remove_if",
    "link": "cpp/algorithm/ranges/remove",
    "marks": {
      "since": "c++20"
    },
    "description": "removes elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::rend",
    "link": "cpp/ranges/rend",
    "marks": {
      "since": "c++20"
    },
    "description": "returns a reverse end iterator to a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::repeat_view",
    "link": "cpp/ranges/repeat_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of a generated sequence by repeatedly producing the same value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::replace",
    "link": "cpp/algorithm/ranges/replace",
    "marks": {
      "since": "c++20"
    },
    "description": "replaces all values satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::replace_copy",
    "link": "cpp/algorithm/ranges/replace_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range, replacing elements satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::replace_copy_if",
    "link": "cpp/algorithm/ranges/replace_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range, replacing elements satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::replace_copy_if_result",
    "link": "cpp/algorithm/ranges/replace_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::replace_copy_if"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::replace_copy_result",
    "link": "cpp/algorithm/ranges/replace_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::replace_copy"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::replace_if",
    "link": "cpp/algorithm/ranges/replace",
    "marks": {
      "since": "c++20"
    },
    "description": "replaces all values satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::reverse",
    "link": "cpp/algorithm/ranges/reverse",
    "marks": {
      "since": "c++20"
    },
    "description": "reverses the order of elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::reverse_copy",
    "link": "cpp/algorithm/ranges/reverse_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a copy of a range that is reversed"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::reverse_copy_result",
    "link": "cpp/algorithm/ranges/reverse_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::reverse_copy"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::reverse_view",
    "link": "cpp/ranges/reverse_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that iterates over the elements of another bidirectional view in reverse order"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::rotate",
    "link": "cpp/algorithm/ranges/rotate",
    "marks": {
      "since": "c++20"
    },
    "description": "rotates the order of elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::rotate_copy",
    "link": "cpp/algorithm/ranges/rotate_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies and rotate a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::rotate_copy_result",
    "link": "cpp/algorithm/ranges/rotate_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::rotate_copy"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::sample",
    "link": "cpp/algorithm/ranges/sample",
    "marks": {
      "since": "c++20"
    },
    "description": "selects N random elements from a sequence"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::search",
    "link": "cpp/algorithm/ranges/search",
    "marks": {
      "since": "c++20"
    },
    "description": "searches for a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::search_n",
    "link": "cpp/algorithm/ranges/search_n",
    "marks": {
      "since": "c++20"
    },
    "description": "searches for a number consecutive copies of an element in a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::sentinel_t",
    "link": "cpp/ranges/iterator_t",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains associated types of a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::set_difference",
    "link": "cpp/algorithm/ranges/set_difference",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the difference between two sets"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::set_difference_result",
    "link": "cpp/algorithm/ranges/set_difference",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::set_difference"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::set_intersection",
    "link": "cpp/algorithm/ranges/set_intersection",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the intersection of two sets"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::set_intersection_result",
    "link": "cpp/algorithm/ranges/set_intersection",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::set_intersection"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::set_symmetric_difference",
    "link": "cpp/algorithm/ranges/set_symmetric_difference",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the symmetric difference between two sets"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::set_symmetric_difference_result",
    "link": "cpp/algorithm/ranges/set_symmetric_difference",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::set_symmetric_difference"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::set_union",
    "link": "cpp/algorithm/ranges/set_union",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the union of two sets"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::set_union_result",
    "link": "cpp/algorithm/ranges/set_union",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::set_union"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::shift_left",
    "link": "cpp/algorithm/ranges/shift",
    "marks": {
      "since": "c++23"
    },
    "description": "shifts elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::shift_right",
    "link": "cpp/algorithm/ranges/shift",
    "marks": {
      "since": "c++23"
    },
    "description": "shifts elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::shuffle",
    "link": "cpp/algorithm/ranges/shuffle",
    "marks": {
      "since": "c++20"
    },
    "description": "randomly re-orders elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::single_view",
    "link": "cpp/ranges/single_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that contains a single element of a specified value"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::size",
    "link": "cpp/ranges/size",
    "marks": {
      "since": "c++20"
    },
    "description": "returns an integer equal to the size of a range"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::sized_range",
    "link": "cpp/ranges/sized_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a range knows its size in constant time"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::sort",
    "link": "cpp/algorithm/ranges/sort",
    "marks": {
      "since": "c++20"
    },
    "description": "sorts a range into ascending order"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::sort_heap",
    "link": "cpp/algorithm/ranges/sort_heap",
    "marks": {
      "since": "c++20"
    },
    "description": "turns a max heap into a range of elements sorted in ascending order"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::slide_view",
    "link": "cpp/ranges/slide_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view whose Mth element is a view over the Mth through (M + N - 1)th elements of another view"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::split_view",
    "link": "cpp/ranges/split_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view over the subranges obtained from splitting another view using a delimiter"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::ssize",
    "link": "cpp/ranges/ssize",
    "marks": {
      "since": "c++20"
    },
    "description": "returns a signed integer equal to the size of a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::stable_partition",
    "link": "cpp/algorithm/ranges/stable_partition",
    "marks": {
      "since": "c++20"
    },
    "description": "divides elements into two groups while preserving their relative order"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::stable_sort",
    "link": "cpp/algorithm/ranges/stable_sort",
    "marks": {
      "since": "c++20"
    },
    "description": "sorts a range of elements while preserving order between equal elements"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::starts_with",
    "link": "cpp/algorithm/ranges/starts_with",
    "marks": {
      "since": "c++23"
    },
    "description": "checks whether a range starts with another range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::stride_view",
    "link": "cpp/ranges/stride_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of elements of another view, advancing over N elements at a time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::subrange",
    "link": "cpp/ranges/subrange",
    "marks": {
      "since": "c++20"
    },
    "description": "combines an iterator-sentinel pair into a view"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::ranges::subrange_kind",
    "link": "cpp/ranges/subrange_kind",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies whether a std::ranges::subrange models std::ranges::sized_range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::ranges::swap",
    "link": "cpp/utility/ranges/swap",
    "marks": {
      "since": "c++20"
    },
    "description": "swaps the values of two objects"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::swap_ranges",
    "link": "cpp/algorithm/ranges/swap_ranges",
    "marks": {
      "since": "c++20"
    },
    "description": "swaps two ranges of elements"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::swap_ranges_result",
    "link": "cpp/algorithm/ranges/swap_ranges",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::swap_ranges"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::take_view",
    "link": "cpp/ranges/take_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the first N elements of another view"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::take_while_view",
    "link": "cpp/ranges/take_while_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the initial elements of another view, until the first element on which a predicate returns false"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::transform",
    "link": "cpp/algorithm/ranges/transform",
    "marks": {
      "since": "c++20"
    },
    "description": "applies a function to a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::ranges::to",
    "link": "cpp/ranges/to",
    "marks": {
      "since": "c++23"
    },
    "description": "constructs a new non-view object from an input range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::transform_view",
    "link": "cpp/ranges/transform_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view of a sequence that applies a transformation function to each element"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::unary_transform_result",
    "link": "cpp/algorithm/ranges/transform",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::unary_transform"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_copy",
    "link": "cpp/memory/ranges/uninitialized_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a range of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_copy_n",
    "link": "cpp/memory/ranges/uninitialized_copy_n",
    "marks": {
      "since": "c++20"
    },
    "description": "copies a number of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::uninitialized_copy_n_result",
    "link": "cpp/memory/ranges/uninitialized_copy_n",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::uninitialized_copy_n"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::uninitialized_copy_result",
    "link": "cpp/memory/ranges/uninitialized_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::uninitialized_copy"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_default_construct",
    "link": "cpp/memory/ranges/uninitialized_default_construct",
    "marks": {
      "since": "c++20"
    },
    "description": "constructs objects by default-initialization in an uninitialized area of memory, defined by a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_default_construct_n",
    "link": "cpp/memory/ranges/uninitialized_default_construct_n",
    "marks": {
      "since": "c++20"
    },
    "description": "constructs objects by default-initialization in an uninitialized area of memory, defined by a start and count"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_fill",
    "link": "cpp/memory/ranges/uninitialized_fill",
    "marks": {
      "since": "c++20"
    },
    "description": "copies an object to an uninitialized area of memory, defined by a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_fill_n",
    "link": "cpp/memory/ranges/uninitialized_fill_n",
    "marks": {
      "since": "c++20"
    },
    "description": "copies an object to an uninitialized area of memory, defined by a start and a count"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_move",
    "link": "cpp/memory/ranges/uninitialized_move",
    "marks": {
      "since": "c++20"
    },
    "description": "moves a range of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_move_n",
    "link": "cpp/memory/ranges/uninitialized_move_n",
    "marks": {
      "since": "c++20"
    },
    "description": "moves a number of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::uninitialized_move_n_result",
    "link": "cpp/memory/ranges/uninitialized_move_n",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::uninitialized_move_n"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::uninitialized_move_result",
    "link": "cpp/memory/ranges/uninitialized_move",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::uninitialized_move"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_value_construct",
    "link": "cpp/memory/ranges/uninitialized_value_construct",
    "marks": {
      "since": "c++20"
    },
    "description": "constructs objects by value-initialization in an uninitialized area of memory, defined by a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::uninitialized_value_construct_n",
    "link": "cpp/memory/ranges/uninitialized_value_construct_n",
    "marks": {
      "since": "c++20"
    },
    "description": "constructs objects by value-initialization in an uninitialized area of memory, defined by a start and a count"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::unique",
    "link": "cpp/algorithm/ranges/unique",
    "marks": {
      "since": "c++20"
    },
    "description": "removes consecutive duplicate elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "niebloid",
    "name": "std::ranges::unique_copy",
    "link": "cpp/algorithm/ranges/unique_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a copy of some range of elements that contains no consecutive duplicates"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::unique_copy_result",
    "link": "cpp/algorithm/ranges/unique_copy",
    "marks": {
      "since": "c++20"
    },
    "description": "Return type of std::ranges::unique_copy"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::values_view",
    "link": "cpp/ranges/values_view",
    "marks": {
      "since": "c++20"
    },
    "description": "takes a view consisting of pair-like values and produces a view of the second elements of each pair"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::view",
    "link": "cpp/ranges/view",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a range is a view, that is, it has constant time copy/move/assignment"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ranges::view_base",
    "link": "cpp/ranges/view",
    "marks": {
      "since": "c++20"
    },
    "description": "deriving from std::view_base enables range types to model std::view"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::view_interface",
    "link": "cpp/ranges/view_interface",
    "marks": {
      "since": "c++20"
    },
    "description": "helper class template for defining a view, using the curiously recurring template pattern"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::ranges::viewable_range",
    "link": "cpp/ranges/viewable_range",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies the requirements for a range to be safely convertible to a view"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::ranges::views",
    "link": "cpp/symbol_index/views",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ranges::wistream_view",
    "link": "cpp/ranges/basic_istream_view",
    "marks": {
      "since": "c++20"
    },
    "description": "std::ranges::basic_istream_view<_, wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::zip_transform_view",
    "link": "cpp/ranges/zip_transform_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of results of application of a transformation function to corresponding elements of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ranges::zip_view",
    "link": "cpp/ranges/zip_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of references to corresponding elements of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ranlux24",
    "link": "cpp/numeric/random/discard_block_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::discard_block_engine<std::ranlux24_base, 223, 23> 24-bit RANLUX generator by Martin Lüscher and Fred James, 1994"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ranlux24_base",
    "link": "cpp/numeric/random/subtract_with_carry_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::subtract_with_carry_engine<std::uint_fast32_t, 24, 10, 24>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ranlux48",
    "link": "cpp/numeric/random/discard_block_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::discard_block_engine<std::ranlux48_base, 389, 11> 48-bit RANLUX generator by Martin Lüscher and Fred James, 1994"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ranlux48_base",
    "link": "cpp/numeric/random/subtract_with_carry_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "std::subtract_with_carry_engine<std::uint_fast64_t, 48, 5, 12>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::rank",
    "link": "cpp/types/rank",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the number of dimensions of an array type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::rank_v",
    "link": "cpp/types/rank",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::rank"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ratio",
    "link": "cpp/numeric/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "represents exact rational fraction"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ratio_add",
    "link": "cpp/numeric/ratio/ratio_add",
    "marks": {
      "since": "c++11"
    },
    "description": "adds two ratio objects at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ratio_divide",
    "link": "cpp/numeric/ratio/ratio_divide",
    "marks": {
      "since": "c++11"
    },
    "description": "divides two ratio objects at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ratio_equal",
    "link": "cpp/numeric/ratio/ratio_equal",
    "marks": {
      "since": "c++11"
    },
    "description": "compares two ratio objects for equality at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ratio_equal_v",
    "link": "cpp/numeric/ratio/ratio_equal",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::ratio_equal"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ratio_greater",
    "link": "cpp/numeric/ratio/ratio_greater",
    "marks": {
      "since": "c++11"
    },
    "description": "compares two ratio objects for greater than at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ratio_greater_equal",
    "link": "cpp/numeric/ratio/ratio_greater_equal",
    "marks": {
      "since": "c++11"
    },
    "description": "compares two ratio objects for greater than or equal to at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ratio_greater_equal_v",
    "link": "cpp/numeric/ratio/ratio_greater_equal",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::ratio_greater_equal"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ratio_greater_v",
    "link": "cpp/numeric/ratio/ratio_greater",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::ratio_greater"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ratio_less",
    "link": "cpp/numeric/ratio/ratio_less",
    "marks": {
      "since": "c++11"
    },
    "description": "compares two ratio objects for less than at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ratio_less_equal",
    "link": "cpp/numeric/ratio/ratio_less_equal",
    "marks": {
      "since": "c++11"
    },
    "description": "compares two ratio objects for less than or equal to at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ratio_less_equal_v",
    "link": "cpp/numeric/ratio/ratio_less_equal",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::ratio_less_equal"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ratio_less_v",
    "link": "cpp/numeric/ratio/ratio_less",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::ratio_less"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ratio_multiply",
    "link": "cpp/numeric/ratio/ratio_multiply",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies two ratio objects at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::ratio_not_equal",
    "link": "cpp/numeric/ratio/ratio_not_equal",
    "marks": {
      "since": "c++11"
    },
    "description": "compares two ratio objects for inequality at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::ratio_not_equal_v",
    "link": "cpp/numeric/ratio/ratio_not_equal",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::ratio_not_equal"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::ratio_subtract",
    "link": "cpp/numeric/ratio/ratio_subtract",
    "marks": {
      "since": "c++11"
    },
    "description": "subtracts two ratio objects at compile-time"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rbegin",
    "link": "cpp/iterator/rbegin",
    "marks": {
      "since": "c++14"
    },
    "description": "returns a reverse iterator to the beginning of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rcu_barrier",
    "link": "cpp/thread/rcu_barrier",
    "marks": {
      "since": "c++26"
    },
    "description": "may evaluate scheduled operations on a RCU domain and blocks until all preceding evaluations are complete"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rcu_default_domain",
    "link": "cpp/thread/rcu_default_domain",
    "marks": {
      "since": "c++26"
    },
    "description": "returns a reference to a static-duration object of type std::rcu_domain"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::rcu_domain",
    "link": "cpp/thread/rcu_domain",
    "marks": {
      "since": "c++26"
    },
    "description": "provides regions of RCU protection"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::rcu_obj_base",
    "link": "cpp/thread/rcu_obj_base",
    "marks": {
      "since": "c++26"
    },
    "description": "allows an object to be protected by RCU"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rcu_synchronize",
    "link": "cpp/thread/rcu_synchronize",
    "marks": {
      "since": "c++26"
    },
    "description": "blocks until a protection region unlocks on a RCU domain"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rcu_retire",
    "link": "cpp/thread/rcu_retire",
    "marks": {
      "since": "c++26"
    },
    "description": "schedules the evaluation of a specified function on a RCU domain, potentially allocating memory, and invoking scheduled evaluations"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::real",
    "link": "cpp/numeric/complex/real2",
    "marks": {},
    "description": "returns the real part"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::realloc",
    "link": "cpp/memory/c/realloc",
    "marks": {},
    "description": "expands or shrinks previously allocated memory block"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::recursive_mutex",
    "link": "cpp/thread/recursive_mutex",
    "marks": {
      "since": "c++11"
    },
    "description": "provides mutual exclusion facility which can be locked recursively by the same thread"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::recursive_timed_mutex",
    "link": "cpp/thread/recursive_timed_mutex",
    "marks": {
      "since": "c++11"
    },
    "description": "provides mutual exclusion facility which can be locked recursively\nby the same thread and implements locking with a timeout"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::reduce",
    "link": "cpp/algorithm/reduce",
    "marks": {
      "since": "c++17"
    },
    "description": "similar to std::accumulate, except out of order"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::ref",
    "link": "cpp/utility/functional/ref",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a std::reference_wrapper with a type deduced from its argument"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::reference_constructs_from_temporary",
    "link": "cpp/types/reference_constructs_from_temporary",
    "marks": {
      "since": "c++23"
    },
    "description": "checks if a reference is bound to a temporary in direct-initialization"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::reference_converts_from_temporary",
    "link": "cpp/types/reference_converts_from_temporary",
    "marks": {
      "since": "c++23"
    },
    "description": "checks if a reference is bound to a temporary in copy-initialization"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::reference_wrapper",
    "link": "cpp/utility/functional/reference_wrapper",
    "marks": {
      "since": "c++11"
    },
    "description": "CopyConstructible and CopyAssignable reference wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::regex",
    "link": "cpp/regex/basic_regex",
    "marks": {
      "since": "c++11"
    },
    "description": "std::basic_regex<char>"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::regex_constants",
    "link": "cpp/symbol_index/regex_constants",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::awk",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::basic",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::collate",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::ECMAScript",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::egrep",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_backref",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_badbrace",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_badrepeat",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_brace",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_brack",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_collate",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_complexity",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_ctype",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_escape",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_paren",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_range",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_space",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::error_stack",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::regex_constants::error_type",
    "link": "cpp/regex/error_type",
    "marks": {
      "since": "c++11"
    },
    "description": "describes different types of matching errors"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::extended",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::format_default",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::format_first_only",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::format_no_copy",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::format_sed",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::grep",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::icase",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_any",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_continuous",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_default",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::regex_constants::match_flag_type",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    },
    "description": "options specific to matching"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_not_bol",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_not_bow",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_not_eol",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_not_eow",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_not_null",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::match_prev_avail",
    "link": "cpp/regex/match_flag_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::multiline",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++17"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::nosubs",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::regex_constants::optimize",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::regex_constants::syntax_option_type",
    "link": "cpp/regex/syntax_option_type",
    "marks": {
      "since": "c++11"
    },
    "description": "general options controlling regex behavior"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::regex_error",
    "link": "cpp/regex/regex_error",
    "marks": {
      "since": "c++11"
    },
    "description": "reports errors generated by the regular expressions library"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::regex_iterator",
    "link": "cpp/regex/regex_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "iterates through all regex matches within a character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::regex_match",
    "link": "cpp/regex/regex_match",
    "marks": {
      "since": "c++11"
    },
    "description": "attempts to match a regular expression to an entire character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::regex_replace",
    "link": "cpp/regex/regex_replace",
    "marks": {
      "since": "c++11"
    },
    "description": "replaces occurrences of a regular expression with formatted replacement text"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::regex_search",
    "link": "cpp/regex/regex_search",
    "marks": {
      "since": "c++11"
    },
    "description": "attempts to match a regular expression to any part of a character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::regex_token_iterator",
    "link": "cpp/regex/regex_token_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "iterates through the specified sub-expressions within all regex matches in a given string or through unmatched substrings"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::regex_traits",
    "link": "cpp/regex/regex_traits",
    "marks": {
      "since": "c++11"
    },
    "description": "provides metainformation about a character type, required by the regex library"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::regular",
    "link": "cpp/concepts/regular",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is regular, that is, it is both semiregular and equality_comparable"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::reinterpret_pointer_cast",
    "link": "cpp/memory/shared_ptr/pointer_cast",
    "marks": {
      "since": "c++11"
    },
    "description": "applies static_cast, dynamic_cast, const_cast, or reinterpret_cast to the stored pointer"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::rel_ops",
    "link": "cpp/symbol_index/rel_ops",
    "marks": {},
    "description": "Provide automatic comparison operators"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::relation",
    "link": "cpp/concepts/relation",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a callable type is a binary relation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::remainder",
    "link": "cpp/numeric/math/remainder",
    "marks": {
      "since": "c++11"
    },
    "description": "signed remainder of the division operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::remainderf",
    "link": "cpp/numeric/math/remainder",
    "marks": {
      "since": "c++11"
    },
    "description": "signed remainder of the division operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::remainderl",
    "link": "cpp/numeric/math/remainder",
    "marks": {
      "since": "c++11"
    },
    "description": "signed remainder of the division operation"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::remove",
    "link": "cpp/io/c/remove",
    "marks": {},
    "description": "removes elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::remove",
    "link": "cpp/algorithm/remove",
    "marks": {},
    "description": "removes elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::remove_if",
    "link": "cpp/algorithm/remove",
    "marks": {},
    "description": "removes elements satisfying specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_all_extents",
    "link": "cpp/types/remove_all_extents",
    "marks": {
      "since": "c++11"
    },
    "description": "removes all extents from the given array type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_all_extents_t",
    "link": "cpp/types/remove_all_extents",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::remove_all_extents"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_const",
    "link": "cpp/types/remove_cv",
    "marks": {
      "since": "c++11"
    },
    "description": "removes const and/or volatile specifiers from the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_const_t",
    "link": "cpp/types/remove_cv",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::remove_const"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::remove_copy",
    "link": "cpp/algorithm/remove_copy",
    "marks": {},
    "description": "copies a range of elements omitting those that satisfy specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::remove_copy_if",
    "link": "cpp/algorithm/remove_copy",
    "marks": {},
    "description": "copies a range of elements omitting those that satisfy specific criteria"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_cv",
    "link": "cpp/types/remove_cv",
    "marks": {
      "since": "c++11"
    },
    "description": "removes const and/or volatile specifiers from the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_cv_t",
    "link": "cpp/types/remove_cv",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::remove_cv"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_cvref",
    "link": "cpp/types/remove_cvref",
    "marks": {
      "since": "c++20"
    },
    "description": "combines std::remove_cv and std::remove_reference"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_cvref_t",
    "link": "cpp/types/remove_cvref",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper type of std::remove_cvref"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_extent",
    "link": "cpp/types/remove_extent",
    "marks": {
      "since": "c++11"
    },
    "description": "removes one extent from the given array type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_extent_t",
    "link": "cpp/types/remove_extent",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::remove_extent"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_pointer",
    "link": "cpp/types/remove_pointer",
    "marks": {
      "since": "c++11"
    },
    "description": "removes a pointer from the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_pointer_t",
    "link": "cpp/types/remove_pointer",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::remove_pointer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_reference",
    "link": "cpp/types/remove_reference",
    "marks": {
      "since": "c++11"
    },
    "description": "removes a reference from the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_reference_t",
    "link": "cpp/types/remove_reference",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::remove_reference"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::remove_volatile",
    "link": "cpp/types/remove_cv",
    "marks": {
      "since": "c++11"
    },
    "description": "removes const and/or volatile specifiers from the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::remove_volatile_t",
    "link": "cpp/types/remove_cv",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::remove_volatile"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::remquo",
    "link": "cpp/numeric/math/remquo",
    "marks": {
      "since": "c++11"
    },
    "description": "signed remainder as well as the three last bits of the division operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::remquof",
    "link": "cpp/numeric/math/remquo",
    "marks": {
      "since": "c++11"
    },
    "description": "signed remainder as well as the three last bits of the division operation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::remquol",
    "link": "cpp/numeric/math/remquo",
    "marks": {
      "since": "c++11"
    },
    "description": "signed remainder as well as the three last bits of the division operation"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rend",
    "link": "cpp/iterator/rend",
    "marks": {
      "since": "c++14"
    },
    "description": "returns a reverse end iterator for a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rename",
    "link": "cpp/io/c/rename",
    "marks": {},
    "description": "renames a file"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::replace",
    "link": "cpp/algorithm/replace",
    "marks": {},
    "description": "replaces all values satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::replace_copy",
    "link": "cpp/algorithm/replace_copy",
    "marks": {},
    "description": "copies a range, replacing elements satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::replace_copy_if",
    "link": "cpp/algorithm/replace_copy",
    "marks": {},
    "description": "copies a range, replacing elements satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::replace_if",
    "link": "cpp/algorithm/replace",
    "marks": {},
    "description": "replaces all values satisfying specific criteria with another value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::resetiosflags",
    "link": "cpp/io/manip/resetiosflags",
    "marks": {},
    "description": "clears the specified ios_base flags"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rethrow_exception",
    "link": "cpp/error/rethrow_exception",
    "marks": {
      "since": "c++11"
    },
    "description": "throws the exception from an std::exception_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rethrow_if_nested",
    "link": "cpp/error/rethrow_if_nested",
    "marks": {
      "since": "c++11"
    },
    "description": "throws the exception from a std::nested_exception"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::reverse",
    "link": "cpp/algorithm/reverse",
    "marks": {},
    "description": "reverses the order of elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::reverse_copy",
    "link": "cpp/algorithm/reverse_copy",
    "marks": {},
    "description": "creates a copy of a range that is reversed"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::reverse_iterator",
    "link": "cpp/iterator/reverse_iterator",
    "marks": {},
    "description": "iterator adaptor for reverse-order traversal"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rewind",
    "link": "cpp/io/c/rewind",
    "marks": {},
    "description": "moves the file position indicator to the beginning in a file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::riemann_zeta",
    "link": "cpp/numeric/special_functions/riemann_zeta",
    "marks": {
      "since": "c++17"
    },
    "description": "Riemann zeta function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::riemann_zetaf",
    "link": "cpp/numeric/special_functions/riemann_zeta",
    "marks": {
      "since": "c++17"
    },
    "description": "Riemann zeta function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::riemann_zetal",
    "link": "cpp/numeric/special_functions/riemann_zeta",
    "marks": {
      "since": "c++17"
    },
    "description": "Riemann zeta function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::right",
    "link": "cpp/io/manip/left",
    "marks": {},
    "description": "sets the placement of fill characters"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rint",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rintf",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::rintl",
    "link": "cpp/numeric/math/rint",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer using current rounding mode with\nexception if the result differs"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ronna",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++26"
    },
    "description": "std::ratio<1000000000000000000000000000, 1>, if std::intmax_t can represent the numerator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ronto",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++26"
    },
    "description": "std::ratio<1, 1000000000000000000000000000>, if std::intmax_t can represent the denominator"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rotate",
    "link": "cpp/algorithm/rotate",
    "marks": {},
    "description": "rotates the order of elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rotate_copy",
    "link": "cpp/algorithm/rotate_copy",
    "marks": {},
    "description": "copies and rotate a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rotl",
    "link": "cpp/numeric/rotl",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the result of bitwise left-rotation"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::rotr",
    "link": "cpp/numeric/rotr",
    "marks": {
      "since": "c++20"
    },
    "description": "computes the result of bitwise right-rotation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::round",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::roundf",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::roundl",
    "link": "cpp/numeric/math/round",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer, rounding away from zero in halfway cases"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::round_indeterminate",
    "link": "cpp/types/numeric_limits/float_round_style",
    "marks": {},
    "description": "rounding style cannot be determined"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::round_to_nearest",
    "link": "cpp/types/numeric_limits/float_round_style",
    "marks": {},
    "description": "rounding toward nearest representable value"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::round_toward_infinity",
    "link": "cpp/types/numeric_limits/float_round_style",
    "marks": {},
    "description": "rounding toward positive infinity"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::round_toward_neg_infinity",
    "link": "cpp/types/numeric_limits/float_round_style",
    "marks": {},
    "description": "rounding toward negative infinity"
  },
  {
    "type": "symbol",
    "symbolType": "enumerator",
    "name": "std::round_toward_zero",
    "link": "cpp/types/numeric_limits/float_round_style",
    "marks": {},
    "description": "rounding toward zero"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::runtime_error",
    "link": "cpp/error/runtime_error",
    "marks": {},
    "description": "exception class to indicate conditions only detectable at run time"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::runtime_format",
    "link": "cpp/utility/format/runtime_format",
    "marks": {
      "since": "c++26"
    },
    "description": "creates runtime format strings directly usable in user-oriented formatting functions"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::same_as",
    "link": "cpp/concepts/same_as",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is the same as another type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sample",
    "link": "cpp/algorithm/sample",
    "marks": {
      "since": "c++17"
    },
    "description": "selects N random elements from a sequence"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::saturate_cast",
    "link": "cpp/numeric/saturate_cast",
    "marks": {
      "since": "c++26"
    },
    "description": "returns an integer value clamped to the range of a another integer type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scalbln",
    "link": "cpp/numeric/math/scalbn",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by FLT_RADIX raised to a power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scalblnf",
    "link": "cpp/numeric/math/scalbn",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by FLT_RADIX raised to a power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scalblnl",
    "link": "cpp/numeric/math/scalbn",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by FLT_RADIX raised to a power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scalbn",
    "link": "cpp/numeric/math/scalbn",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by FLT_RADIX raised to a power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scalbnf",
    "link": "cpp/numeric/math/scalbn",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by FLT_RADIX raised to a power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scalbnl",
    "link": "cpp/numeric/math/scalbn",
    "marks": {
      "since": "c++11"
    },
    "description": "multiplies a number by FLT_RADIX raised to a power"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scanf",
    "link": "cpp/io/c/fscanf",
    "marks": {},
    "description": "reads formatted input from stdin, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::scientific",
    "link": "cpp/io/manip/fixed",
    "marks": {},
    "description": "changes formatting used for floating-point I/O"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::scoped_allocator_adaptor",
    "link": "cpp/memory/scoped_allocator_adaptor",
    "marks": {
      "since": "c++11"
    },
    "description": "implements multi-level allocator for multi-level containers"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::scoped_lock",
    "link": "cpp/thread/scoped_lock",
    "marks": {
      "since": "c++17"
    },
    "description": "deadlock-avoiding RAII wrapper for multiple mutexes"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::search",
    "link": "cpp/algorithm/search",
    "marks": {},
    "description": "searches for a range of elements"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::search_n",
    "link": "cpp/algorithm/search_n",
    "marks": {},
    "description": "searches a range for a number of consecutive copies of an element"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::seed_seq",
    "link": "cpp/numeric/random/seed_seq",
    "marks": {
      "since": "c++11"
    },
    "description": "general-purpose bias-eliminating scrambled seed sequence generator"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::semiregular",
    "link": "cpp/concepts/semiregular",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that an object of a type can be copied, moved, swapped, and default constructed"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::sentinel_for",
    "link": "cpp/iterator/sentinel_for",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies a type is a sentinel for an input_or_output_iterator type"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::set",
    "link": "cpp/container/set",
    "marks": {},
    "description": "collection of unique keys, sorted by keys"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::set_difference",
    "link": "cpp/algorithm/set_difference",
    "marks": {},
    "description": "computes the difference between two sets"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::set_intersection",
    "link": "cpp/algorithm/set_intersection",
    "marks": {},
    "description": "computes the intersection of two sets"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::set_new_handler",
    "link": "cpp/memory/new/set_new_handler",
    "marks": {},
    "description": "registers a new handler"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::set_symmetric_difference",
    "link": "cpp/algorithm/set_symmetric_difference",
    "marks": {},
    "description": "computes the symmetric difference between two sets"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::set_terminate",
    "link": "cpp/error/set_terminate",
    "marks": {},
    "description": "changes the function to be called by std::terminate"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::set_union",
    "link": "cpp/algorithm/set_union",
    "marks": {},
    "description": "computes the union of two sets"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::setbase",
    "link": "cpp/io/manip/setbase",
    "marks": {},
    "description": "changes the base used for integer I/O"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::setbuf",
    "link": "cpp/io/c/setbuf",
    "marks": {},
    "description": "sets the buffer for a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::setfill",
    "link": "cpp/io/manip/setfill",
    "marks": {},
    "description": "changes the fill character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::setiosflags",
    "link": "cpp/io/manip/setiosflags",
    "marks": {},
    "description": "sets the specified ios_base flags"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::setlocale",
    "link": "cpp/locale/setlocale",
    "marks": {},
    "description": "gets and sets the current C locale"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::setprecision",
    "link": "cpp/io/manip/setprecision",
    "marks": {},
    "description": "changes floating-point precision"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::setvbuf",
    "link": "cpp/io/c/setvbuf",
    "marks": {},
    "description": "sets the buffer and its size for a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::setw",
    "link": "cpp/io/manip/setw",
    "marks": {},
    "description": "changes the width of the next input/output field"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::shared_future",
    "link": "cpp/thread/shared_future",
    "marks": {
      "since": "c++11"
    },
    "description": "waits for a value (possibly referenced by other futures) that is set asynchronously"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::shared_lock",
    "link": "cpp/thread/shared_lock",
    "marks": {
      "since": "c++14"
    },
    "description": "implements movable shared mutex ownership wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::shared_mutex",
    "link": "cpp/thread/shared_mutex",
    "marks": {
      "since": "c++17"
    },
    "description": "provides shared mutual exclusion facility"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::shared_ptr",
    "link": "cpp/memory/shared_ptr",
    "marks": {
      "since": "c++11"
    },
    "description": "smart pointer with shared object ownership semantics"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::shared_timed_mutex",
    "link": "cpp/thread/shared_timed_mutex",
    "marks": {
      "since": "c++14"
    },
    "description": "provides shared mutual exclusion facility and implements locking with a timeout"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::shift_left",
    "link": "cpp/algorithm/shift",
    "marks": {
      "since": "c++20"
    },
    "description": "shifts elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::shift_right",
    "link": "cpp/algorithm/shift",
    "marks": {
      "since": "c++20"
    },
    "description": "shifts elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::showbase",
    "link": "cpp/io/manip/showbase",
    "marks": {},
    "description": "controls whether prefix is used to indicate numeric base"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::showpoint",
    "link": "cpp/io/manip/showpoint",
    "marks": {},
    "description": "controls whether decimal point is always included in floating-point representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::showpos",
    "link": "cpp/io/manip/showpos",
    "marks": {},
    "description": "controls whether the + sign used with non-negative numbers"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::shuffle",
    "link": "cpp/algorithm/random_shuffle",
    "marks": {
      "since": "c++11"
    },
    "description": "randomly re-orders elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::shuffle_order_engine",
    "link": "cpp/numeric/random/shuffle_order_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "delivers the output of a random number engine in a different order"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::sig_atomic_t",
    "link": "cpp/utility/program/sig_atomic_t",
    "marks": {},
    "description": "the integer type that can be accessed as an atomic entity from an asynchronous signal handler"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::signal",
    "link": "cpp/utility/program/signal",
    "marks": {},
    "description": "sets a signal handler for particular signal"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::signbit",
    "link": "cpp/numeric/math/signbit",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the given number is negative"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::signed_integral",
    "link": "cpp/concepts/signed_integral",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is an integral type that is signed"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sin",
    "link": "cpp/numeric/math/sin",
    "marks": {},
    "description": "computes sine (sin(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sin",
    "link": "cpp/numeric/complex/sin",
    "marks": {},
    "note": "std::complex",
    "description": "computes sine of a complex number (sin(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sin",
    "link": "cpp/numeric/valarray/sin",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::sin to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sinf",
    "link": "cpp/numeric/math/sin",
    "marks": {
      "since": "c++11"
    },
    "description": "computes sine (sin(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sinh",
    "link": "cpp/numeric/math/sinh",
    "marks": {},
    "description": "computes hyperbolic sine (sinh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sinh",
    "link": "cpp/numeric/complex/sinh",
    "marks": {},
    "note": "std::complex",
    "description": "computes hyperbolic sine of a complex number (sinh(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sinh",
    "link": "cpp/numeric/valarray/sinh",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::sinh to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sinhf",
    "link": "cpp/numeric/math/sinh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes hyperbolic sine (sinh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sinhl",
    "link": "cpp/numeric/math/sinh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes hyperbolic sine (sinh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sinl",
    "link": "cpp/numeric/math/sin",
    "marks": {
      "since": "c++11"
    },
    "description": "computes sine (sin(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::size",
    "link": "cpp/iterator/size",
    "marks": {
      "since": "c++17"
    },
    "description": "returns the size of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::size_t",
    "link": "cpp/types/size_t",
    "marks": {},
    "description": "unsigned integer type returned by the sizeof operator"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::sized_sentinel_for",
    "link": "cpp/iterator/sized_sentinel_for",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that the - operator can be applied to an iterator and a sentinel to calculate their difference in constant time"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::skipws",
    "link": "cpp/io/manip/skipws",
    "marks": {},
    "description": "controls whether leading whitespace is skipped on input"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::slice",
    "link": "cpp/numeric/valarray/slice",
    "marks": {},
    "description": "BLAS-like slice of a valarray: starting index, length, stride"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::slice_array",
    "link": "cpp/numeric/valarray/slice_array",
    "marks": {},
    "description": "proxy to a subset of a valarray after applying a slice"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::smatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++11"
    },
    "description": "std::match_results<std::string::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::snprintf",
    "link": "cpp/io/c/fprintf",
    "marks": {
      "since": "c++11"
    },
    "description": "prints formatted output to stdout, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sort",
    "link": "cpp/algorithm/sort",
    "marks": {},
    "description": "sorts a range into ascending order"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sort_heap",
    "link": "cpp/algorithm/sort_heap",
    "marks": {},
    "description": "turns a max heap into a range of elements sorted in ascending order"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::sortable",
    "link": "cpp/iterator/sortable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies the common requirements of algorithms that permute sequences into ordered sequences"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::sorted_equivalent",
    "link": "cpp/container/sorted_equivalent",
    "marks": {
      "since": "c++23"
    },
    "description": "indicates that elements of a range are sorted (uniqueness is not required)"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::sorted_equivalent_t",
    "link": "cpp/container/sorted_equivalent",
    "marks": {
      "since": "c++23"
    },
    "description": "indicates that elements of a range are sorted (uniqueness is not required)"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::sorted_unique",
    "link": "cpp/container/sorted_unique",
    "marks": {
      "since": "c++23"
    },
    "description": "indicates that elements of a range are sorted and unique"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::sorted_unique_t",
    "link": "cpp/container/sorted_unique",
    "marks": {
      "since": "c++23"
    },
    "description": "indicates that elements of a range are sorted and unique"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::source_location",
    "link": "cpp/utility/source_location",
    "marks": {
      "since": "c++20"
    },
    "description": "a class representing information about the source code, such as file names, line numbers, and function names"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::span",
    "link": "cpp/container/span",
    "marks": {
      "since": "c++20"
    },
    "description": "a non-owning view over a contiguous sequence of objects"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::spanbuf",
    "link": "cpp/io/basic_spanbuf",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_spanbuf<char>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::spanstream",
    "link": "cpp/io/basic_spanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_spanstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_bessel",
    "link": "cpp/numeric/special_functions/sph_bessel",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical Bessel functions (of the first kind)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_besself",
    "link": "cpp/numeric/special_functions/sph_bessel",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical Bessel functions (of the first kind)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_bessell",
    "link": "cpp/numeric/special_functions/sph_bessel",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical Bessel functions (of the first kind)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_legendre",
    "link": "cpp/numeric/special_functions/sph_legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical associated Legendre functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_legendref",
    "link": "cpp/numeric/special_functions/sph_legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical associated Legendre functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_legendrel",
    "link": "cpp/numeric/special_functions/sph_legendre",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical associated Legendre functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_neumann",
    "link": "cpp/numeric/special_functions/sph_neumann",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical Neumann functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_neumannf",
    "link": "cpp/numeric/special_functions/sph_neumann",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical Neumann functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sph_neumannl",
    "link": "cpp/numeric/special_functions/sph_neumann",
    "marks": {
      "since": "c++17"
    },
    "description": "spherical Neumann functions"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sprintf",
    "link": "cpp/io/c/fprintf",
    "marks": {},
    "description": "prints formatted output to stdout, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sqrt",
    "link": "cpp/numeric/math/sqrt",
    "marks": {},
    "description": "computes square root (√x)"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sqrt",
    "link": "cpp/numeric/complex/sqrt",
    "marks": {},
    "note": "std::complex",
    "description": "complex square root in the range of the right half-plane"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sqrt",
    "link": "cpp/numeric/valarray/sqrt",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::sqrt to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sqrtf",
    "link": "cpp/numeric/math/sqrt",
    "marks": {
      "since": "c++11"
    },
    "description": "computes square root (√x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sqrtl",
    "link": "cpp/numeric/math/sqrt",
    "marks": {
      "since": "c++11"
    },
    "description": "computes square root (√x)"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::srand",
    "link": "cpp/numeric/random/srand",
    "marks": {},
    "description": "seeds pseudo-random number generator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::sregex_iterator",
    "link": "cpp/regex/regex_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_iterator<std::string::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::sregex_token_iterator",
    "link": "cpp/regex/regex_token_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_token_iterator<std::string::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::sscanf",
    "link": "cpp/io/c/fscanf",
    "marks": {},
    "description": "reads formatted input from stdin, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::ssize",
    "link": "cpp/iterator/size",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the size of a container or array"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::ssub_match",
    "link": "cpp/regex/sub_match",
    "marks": {
      "since": "c++11"
    },
    "description": "std::sub_match<std::string::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::stable_partition",
    "link": "cpp/algorithm/stable_partition",
    "marks": {},
    "description": "divides elements into two groups while preserving their relative order"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::stable_sort",
    "link": "cpp/algorithm/stable_sort",
    "marks": {},
    "description": "sorts a range of elements while preserving order between equal elements"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::stack",
    "link": "cpp/container/stack",
    "marks": {},
    "description": "adapts a container to provide stack (LIFO data structure)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::stacktrace",
    "link": "cpp/utility/basic_stacktrace",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_stacktrace<std::allocator<std::stacktrace_entry>>"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::stacktrace_entry",
    "link": "cpp/utility/stacktrace_entry",
    "marks": {
      "since": "c++23"
    },
    "description": "representation of an evaluation in a stacktrace"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::start_lifetime_as",
    "link": "cpp/memory/start_lifetime_as",
    "marks": {
      "since": "c++23"
    },
    "description": "implicitly creates objects in given storage with the object representation reused"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::static_pointer_cast",
    "link": "cpp/memory/shared_ptr/pointer_cast",
    "marks": {
      "since": "c++11"
    },
    "description": "applies static_cast, dynamic_cast, const_cast, or reinterpret_cast to the stored pointer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stod",
    "link": "cpp/string/basic_string/stof",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to a floating point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stof",
    "link": "cpp/string/basic_string/stof",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to a floating point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stoi",
    "link": "cpp/string/basic_string/stol",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to a signed integer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stol",
    "link": "cpp/string/basic_string/stol",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to a signed integer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stold",
    "link": "cpp/string/basic_string/stof",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to a floating point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stoll",
    "link": "cpp/string/basic_string/stol",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to a signed integer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stoul",
    "link": "cpp/string/basic_string/stoul",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to an unsigned integer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::stoull",
    "link": "cpp/string/basic_string/stoul",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a string to an unsigned integer"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::stop_callback",
    "link": "cpp/thread/stop_callback",
    "marks": {
      "since": "c++20"
    },
    "description": "an interface for registering callbacks on std::jthread cancellation"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::stop_source",
    "link": "cpp/thread/stop_source",
    "marks": {
      "since": "c++20"
    },
    "description": "class representing a request to stop one or more std::jthreads"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::stop_token",
    "link": "cpp/thread/stop_token",
    "marks": {
      "since": "c++20"
    },
    "description": "an interface for querying if a std::jthread cancellation request has been made"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strcat",
    "link": "cpp/string/byte/strcat",
    "marks": {},
    "description": "concatenates two strings"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strchr",
    "link": "cpp/string/byte/strchr",
    "marks": {},
    "description": "finds the first occurrence of a character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strcmp",
    "link": "cpp/string/byte/strcmp",
    "marks": {},
    "description": "compares two strings"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strcoll",
    "link": "cpp/string/byte/strcoll",
    "marks": {},
    "description": "compares two strings in accordance to the current locale"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strcpy",
    "link": "cpp/string/byte/strcpy",
    "marks": {},
    "description": "copies one string to another"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strcspn",
    "link": "cpp/string/byte/strcspn",
    "marks": {},
    "description": "returns the length of the maximum initial segment that consists\nof only the characters not found in another byte string"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::streambuf",
    "link": "cpp/io/basic_streambuf",
    "marks": {},
    "description": "std::basic_streambuf<char>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::streamoff",
    "link": "cpp/io/streamoff",
    "marks": {},
    "description": "represents relative file/stream position (offset from fpos), sufficient to represent any file size"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::streampos",
    "link": "cpp/io/fpos",
    "marks": {},
    "description": "std::fpos<std::char_traits<char>::state_type>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::streamsize",
    "link": "cpp/io/streamsize",
    "marks": {},
    "description": "represents the number of characters transferred in an I/O operation or the size of an I/O buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strerror",
    "link": "cpp/string/byte/strerror",
    "marks": {},
    "description": "returns a text version of a given error code"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strftime",
    "link": "cpp/chrono/c/strftime",
    "marks": {},
    "description": "converts a std::tm object to custom textual representation"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::strict_weak_order",
    "link": "cpp/concepts/strict_weak_order",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a relation imposes a strict weak ordering"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::strided_slice",
    "link": "cpp/container/mdspan/strided_slice",
    "marks": {
      "since": "c++26"
    },
    "description": "a slice specifier representing a set of regularly spaced indices as indicated by an offset, an extent, and a stride"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::string",
    "link": "cpp/string/basic_string",
    "marks": {},
    "description": "std::basic_string<char>"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::string_literals",
    "link": "cpp/symbol_index/string_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::string_literals::s",
    "link": "cpp/string/basic_string/operator\"\"s",
    "marks": {
      "since": "c++14"
    },
    "description": "converts a character array literal to basic_string"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::string_view",
    "link": "cpp/string/basic_string_view",
    "marks": {
      "since": "c++17"
    },
    "description": "std::basic_string_view<char>"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::string_view_literals",
    "link": "cpp/symbol_index/string_view_literals",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::string_view_literals::sv",
    "link": "cpp/string/basic_string_view/operator\"\"sv",
    "marks": {
      "since": "c++17"
    },
    "description": "creates a string view of a character array literal"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::stringbuf",
    "link": "cpp/io/basic_stringbuf",
    "marks": {},
    "description": "std::basic_stringbuf<char>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::stringstream",
    "link": "cpp/io/basic_stringstream",
    "marks": {},
    "description": "std::basic_stringstream<char>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strlen",
    "link": "cpp/string/byte/strlen",
    "marks": {},
    "description": "returns the length of a given string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strncat",
    "link": "cpp/string/byte/strncat",
    "marks": {},
    "description": "concatenates a certain amount of characters of two strings"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strncmp",
    "link": "cpp/string/byte/strncmp",
    "marks": {},
    "description": "compares a certain number of characters from two strings"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strncpy",
    "link": "cpp/string/byte/strncpy",
    "marks": {},
    "description": "copies a certain amount of characters from one string to another"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::strong_order",
    "link": "cpp/utility/compare/strong_order",
    "marks": {
      "since": "c++20"
    },
    "description": "performs 3-way comparison and produces a result of type std::strong_ordering"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::strong_ordering",
    "link": "cpp/utility/compare/strong_ordering",
    "marks": {
      "since": "c++20"
    },
    "description": "the result type of 3-way comparison that supports all 6 operators and is substitutable"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strpbrk",
    "link": "cpp/string/byte/strpbrk",
    "marks": {},
    "description": "finds the first location of any character from a set of separators"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strrchr",
    "link": "cpp/string/byte/strrchr",
    "marks": {},
    "description": "finds the last occurrence of a character"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strspn",
    "link": "cpp/string/byte/strspn",
    "marks": {},
    "description": "returns the length of the maximum initial segment that consists\nof only the characters found in another byte string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strstr",
    "link": "cpp/string/byte/strstr",
    "marks": {},
    "description": "finds the first occurrence of a substring of characters"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::strstream",
    "link": "cpp/io/strstream",
    "marks": {
      "deprecated": "c++98"
    },
    "description": "implements character array input/output operations"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::strstreambuf",
    "link": "cpp/io/strstreambuf",
    "marks": {
      "deprecated": "c++98"
    },
    "description": "implements raw character array device"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtod",
    "link": "cpp/string/byte/strtof",
    "marks": {},
    "description": "converts a byte string to a floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtof",
    "link": "cpp/string/byte/strtof",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a byte string to a floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtoimax",
    "link": "cpp/string/byte/strtoimax",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a byte string to std::intmax_t or std::uintmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtok",
    "link": "cpp/string/byte/strtok",
    "marks": {},
    "description": "finds the next token in a byte string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtol",
    "link": "cpp/string/byte/strtol",
    "marks": {},
    "description": "converts a byte string to an integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtold",
    "link": "cpp/string/byte/strtof",
    "marks": {},
    "description": "converts a byte string to a floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtoll",
    "link": "cpp/string/byte/strtol",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a byte string to an integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtoul",
    "link": "cpp/string/byte/strtoul",
    "marks": {},
    "description": "converts a byte string to an unsigned integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtoull",
    "link": "cpp/string/byte/strtoul",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a byte string to an unsigned integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strtoumax",
    "link": "cpp/string/byte/strtoimax",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a byte string to std::intmax_t or std::uintmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::strxfrm",
    "link": "cpp/string/byte/strxfrm",
    "marks": {},
    "description": "transform a string so that strcmp would produce the same result as strcoll"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::syncbuf",
    "link": "cpp/io/basic_syncbuf",
    "marks": {
      "since": "c++20"
    },
    "description": "std::basic_syncbuf<char>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::student_t_distribution",
    "link": "cpp/numeric/random/student_t_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a Student's t-distribution"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::sub_match",
    "link": "cpp/regex/sub_match",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies the sequence of characters matched by a sub-expression"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::sub_sat",
    "link": "cpp/numeric/sub_sat",
    "marks": {
      "since": "c++26"
    },
    "description": "saturating subtraction operation on two integers"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::submdspan",
    "link": "cpp/container/mdspan/submdspan",
    "marks": {
      "since": "c++26"
    },
    "description": "returns a view of a subset of an existing mdspan"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::submdspan_extents",
    "link": "cpp/container/mdspan/submdspan_extents",
    "marks": {
      "since": "c++26"
    },
    "description": "creates new extents from the existing extents and slice specifiers"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::submdspan_mapping_result",
    "link": "cpp/container/mdspan/submdspan_mapping_result",
    "marks": {
      "since": "c++26"
    },
    "description": "a return type of the overloads of submdspan_mapping"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::subtract_with_carry_engine",
    "link": "cpp/numeric/random/subtract_with_carry_engine",
    "marks": {
      "since": "c++11"
    },
    "description": "implements a subtract-with-carry (lagged Fibonacci) algorithm"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::suspend_always",
    "link": "cpp/coroutine/suspend_always",
    "marks": {
      "since": "c++20"
    },
    "description": "indicates that an await-expression should always suspend"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::suspend_never",
    "link": "cpp/coroutine/suspend_never",
    "marks": {
      "since": "c++20"
    },
    "description": "indicates that an await-expression should never suspend"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::swap",
    "link": "cpp/algorithm/swap",
    "marks": {},
    "description": "swaps the values of two objects"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::swap_ranges",
    "link": "cpp/algorithm/swap_ranges",
    "marks": {},
    "description": "swaps two ranges of elements"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::swappable",
    "link": "cpp/concepts/swappable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type can be swapped or that two types can be swapped with each other"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::swappable_with",
    "link": "cpp/concepts/swappable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type can be swapped or that two types can be swapped with each other"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::swprintf",
    "link": "cpp/io/c/fwprintf",
    "marks": {},
    "description": "prints formatted wide character output to stdout, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::swscanf",
    "link": "cpp/io/c/fwscanf",
    "marks": {},
    "description": "reads formatted wide character input from stdin, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::system",
    "link": "cpp/utility/program/system",
    "marks": {},
    "description": "calls the host environment's command processor"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::system_category",
    "link": "cpp/error/system_category",
    "marks": {
      "since": "c++11"
    },
    "description": "identifies the operating system error category"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::system_error",
    "link": "cpp/error/system_error",
    "marks": {
      "since": "c++11"
    },
    "description": "exception class used to report conditions that have an error_code"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tan",
    "link": "cpp/numeric/math/tan",
    "marks": {},
    "description": "computes tangent (tan(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::tan",
    "link": "cpp/numeric/complex/tan",
    "marks": {},
    "note": "std::complex",
    "description": "computes tangent of a complex number (tan(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::tan",
    "link": "cpp/numeric/valarray/tan",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::tan to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tan",
    "link": "cpp/numeric/math/tan",
    "marks": {},
    "description": "computes tangent (tan(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tanf",
    "link": "cpp/numeric/math/tan",
    "marks": {
      "since": "c++11"
    },
    "description": "computes tangent (tan(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tanh",
    "link": "cpp/numeric/math/tanh",
    "marks": {},
    "description": "computes hyperbolic tangent (tanh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::tanh",
    "link": "cpp/numeric/complex/tanh",
    "marks": {},
    "note": "std::complex",
    "description": "computes hyperbolic tangent of a complex number (tanh(z))"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::tanh",
    "link": "cpp/numeric/valarray/tanh",
    "marks": {},
    "note": "std::valarray",
    "description": "applies the function std::tanh to each element of valarray"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tanhf",
    "link": "cpp/numeric/math/tanh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes hyperbolic tangent (tanh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tanhl",
    "link": "cpp/numeric/math/tanh",
    "marks": {
      "since": "c++11"
    },
    "description": "computes hyperbolic tangent (tanh(x))"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tanl",
    "link": "cpp/numeric/math/tan",
    "marks": {
      "since": "c++11"
    },
    "description": "computes tangent (tan(x))"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::tera",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000000000000, 1>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::terminate",
    "link": "cpp/error/terminate",
    "marks": {},
    "description": "function called when exception handling fails"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::terminate_handler",
    "link": "cpp/error/terminate_handler",
    "marks": {},
    "description": "the type of the function called by std::terminate"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::text_encoding",
    "link": "cpp/locale/text_encoding",
    "marks": {
      "since": "c++26"
    },
    "description": "describes an interface for accessing the IANA Character Sets registry"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tgamma",
    "link": "cpp/numeric/math/tgamma",
    "marks": {
      "since": "c++11"
    },
    "description": "gamma function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tgammaf",
    "link": "cpp/numeric/math/tgamma",
    "marks": {
      "since": "c++11"
    },
    "description": "gamma function"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tgammal",
    "link": "cpp/numeric/math/tgamma",
    "marks": {
      "since": "c++11"
    },
    "description": "gamma function"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::this_thread",
    "link": "cpp/symbol_index/this_thread",
    "marks": {},
    "description": "provide functions that access the current thread of execution"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::this_thread::get_id",
    "link": "cpp/thread/get_id",
    "marks": {
      "since": "c++11"
    },
    "description": "returns the thread id of the current thread"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::this_thread::sleep_for",
    "link": "cpp/thread/sleep_for",
    "marks": {
      "since": "c++11"
    },
    "description": "stops the execution of the current thread for a specified time duration"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::this_thread::sleep_until",
    "link": "cpp/thread/sleep_until",
    "marks": {
      "since": "c++11"
    },
    "description": "stops the execution of the current thread until a specified time point"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::this_thread::yield",
    "link": "cpp/thread/yield",
    "marks": {
      "since": "c++11"
    },
    "description": "suggests that the implementation reschedule execution of threads"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::thread",
    "link": "cpp/thread/thread",
    "marks": {
      "since": "c++11"
    },
    "description": "manages a separate thread"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::three_way_comparable",
    "link": "cpp/utility/compare/three_way_comparable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that operator <=> produces consistent result on given types"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::three_way_comparable_with",
    "link": "cpp/utility/compare/three_way_comparable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that operator <=> produces consistent result on given types"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::throw_with_nested",
    "link": "cpp/error/throw_with_nested",
    "marks": {
      "since": "c++11"
    },
    "description": "throws its argument with std::nested_exception mixed in"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::tie",
    "link": "cpp/utility/tuple/tie",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a tuple of lvalue references or unpacks a tuple into individual objects"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::time",
    "link": "cpp/chrono/c/time",
    "marks": {},
    "description": "returns the current time of the system as time since epoch"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::time_base",
    "link": "cpp/locale/time_base",
    "marks": {},
    "description": "defines date format constants"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::time_get",
    "link": "cpp/locale/time_get",
    "marks": {},
    "description": "parses time/date values from an input character sequence into std::tm"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::time_get_byname",
    "link": "cpp/locale/time_get_byname",
    "marks": {},
    "description": "represents the system-supplied std::time_get for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::time_put",
    "link": "cpp/locale/time_put",
    "marks": {},
    "description": "formats contents of std::tm for output as character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::time_put_byname",
    "link": "cpp/locale/time_put_byname",
    "marks": {},
    "description": "represents the system-supplied std::time_put for the named locale"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::time_t",
    "link": "cpp/chrono/c/time_t",
    "marks": {},
    "description": "time since epoch type"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::timed_mutex",
    "link": "cpp/thread/timed_mutex",
    "marks": {
      "since": "c++11"
    },
    "description": "provides mutual exclusion facility which implements locking with a timeout"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::timespec",
    "link": "cpp/chrono/c/timespec",
    "marks": {
      "since": "c++17"
    },
    "description": "time in seconds and nanoseconds"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::timespec_get",
    "link": "cpp/chrono/c/timespec_get",
    "marks": {
      "since": "c++17"
    },
    "description": "returns the calendar time in seconds and nanoseconds based on a given time base"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::tm",
    "link": "cpp/chrono/c/tm",
    "marks": {},
    "description": "calendar time type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tmpfile",
    "link": "cpp/io/c/tmpfile",
    "marks": {},
    "description": "creates and opens a temporary, auto-removing file"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tmpnam",
    "link": "cpp/io/c/tmpnam",
    "marks": {},
    "description": "returns a unique filename"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::to_address",
    "link": "cpp/memory/to_address",
    "marks": {
      "since": "c++20"
    },
    "description": "obtains a raw pointer from a pointer-like type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::to_array",
    "link": "cpp/container/array/to_array",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a std::array object from a built-in array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::to_chars",
    "link": "cpp/utility/to_chars",
    "marks": {
      "since": "c++17"
    },
    "description": "converts an integer or floating-point value to a character sequence"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::to_chars_result",
    "link": "cpp/utility/to_chars",
    "marks": {
      "since": "c++17"
    },
    "description": "the return type of std::to_chars"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::to_integer",
    "link": "cpp/types/byte",
    "marks": {
      "since": "c++17"
    },
    "description": "convert std::byte to integer"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::to_string",
    "link": "cpp/string/basic_string/to_string",
    "marks": {
      "since": "c++11"
    },
    "description": "returns a string with a description of the stacktrace_entry"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::to_wstring",
    "link": "cpp/string/basic_string/to_wstring",
    "marks": {
      "since": "c++11"
    },
    "description": "converts an integral or floating-point value to wstring"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tolower",
    "link": "cpp/string/byte/tolower",
    "marks": {},
    "description": "converts a character to lowercase"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::tolower",
    "link": "cpp/locale/tolower",
    "marks": {},
    "description": "converts a character to lowercase"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::totally_ordered",
    "link": "cpp/concepts/totally_ordered",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that the comparison operators on the type yield a total order"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::totally_ordered_with",
    "link": "cpp/concepts/totally_ordered",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that the comparison operators on the type yield a total order"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::toupper",
    "link": "cpp/string/byte/toupper",
    "marks": {},
    "description": "converts a character to uppercase"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::toupper",
    "link": "cpp/locale/toupper",
    "marks": {},
    "description": "converts a character to uppercase"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::to_underlying",
    "link": "cpp/utility/to_underlying",
    "marks": {
      "since": "c++23"
    },
    "description": "converts an enumeration to its underlying type"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::towctrans",
    "link": "cpp/string/wide/towctrans",
    "marks": {},
    "description": "performs character mapping according to the specified LC_CTYPE mapping category"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::towlower",
    "link": "cpp/string/wide/towlower",
    "marks": {},
    "description": "converts a wide character to lowercase"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::towupper",
    "link": "cpp/string/wide/towupper",
    "marks": {},
    "description": "converts a wide character to uppercase"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::transform",
    "link": "cpp/algorithm/transform",
    "marks": {},
    "description": "applies a function to a range of elements, storing results in a destination range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::transform_exclusive_scan",
    "link": "cpp/algorithm/transform_exclusive_scan",
    "marks": {
      "since": "c++17"
    },
    "description": "applies an invocable, then calculates exclusive scan"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::transform_inclusive_scan",
    "link": "cpp/algorithm/transform_inclusive_scan",
    "marks": {
      "since": "c++17"
    },
    "description": "applies an invocable, then calculates inclusive scan"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::transform_reduce",
    "link": "cpp/algorithm/transform_reduce",
    "marks": {
      "since": "c++17"
    },
    "description": "applies an invocable, then reduces out of order"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::true_type",
    "link": "cpp/types/integral_constant",
    "marks": {
      "since": "c++11"
    },
    "description": "std::integral_constant<bool, true>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::trunc",
    "link": "cpp/numeric/math/trunc",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer not greater in magnitude than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::truncf",
    "link": "cpp/numeric/math/trunc",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer not greater in magnitude than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::truncl",
    "link": "cpp/numeric/math/trunc",
    "marks": {
      "since": "c++11"
    },
    "description": "nearest integer not greater in magnitude than the given value"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::try_lock",
    "link": "cpp/thread/try_lock",
    "marks": {
      "since": "c++11"
    },
    "description": "attempts to obtain ownership of mutexes via repeated calls to try_lock"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::try_to_lock",
    "link": "cpp/thread/lock_tag",
    "marks": {
      "since": "c++11"
    },
    "description": "tags used to specify locking strategy"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::try_to_lock_t",
    "link": "cpp/thread/lock_tag_t",
    "marks": {
      "since": "c++11"
    },
    "description": "tags used to specify locking strategy"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::tuple",
    "link": "cpp/utility/tuple",
    "marks": {
      "since": "c++11"
    },
    "description": "implements fixed size container, which holds elements of possibly different types"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::tuple_cat",
    "link": "cpp/utility/tuple/tuple_cat",
    "marks": {
      "since": "c++11"
    },
    "description": "creates a tuple by concatenating any number of tuples"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::tuple_element",
    "link": "cpp/utility/tuple_element",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the element types of a tuple-like type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::tuple_element_t",
    "link": "cpp/utility/tuple_element",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::tuple_element"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::tuple_size",
    "link": "cpp/utility/tuple_size",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the number of elements of a tuple-like type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::tuple_size_v",
    "link": "cpp/utility/tuple_size",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::tuple_size"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::type_identity",
    "link": "cpp/types/type_identity",
    "marks": {
      "since": "c++20"
    },
    "description": "returns the type argument unchanged"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::type_identity_t",
    "link": "cpp/types/type_identity",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper type of std::type_identity"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::type_index",
    "link": "cpp/types/type_index",
    "marks": {
      "since": "c++11"
    },
    "description": "wrapper around a type_info object, that can be used as index in associative and unordered associative containers"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::type_info",
    "link": "cpp/types/type_info",
    "marks": {},
    "description": "contains some type's information, generated by the implementation.\nThis is the class returned by the typeid operator."
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u16streampos",
    "link": "cpp/io/fpos",
    "marks": {
      "since": "c++11"
    },
    "description": "std::fpos<std::char_traits<char16_t>::state_type>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u16string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++11"
    },
    "description": "std::basic_string<char16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u16string_view",
    "link": "cpp/string/basic_string_view",
    "marks": {
      "since": "c++17"
    },
    "description": "std::basic_string_view<char16_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u32streampos",
    "link": "cpp/io/fpos",
    "marks": {
      "since": "c++11"
    },
    "description": "std::fpos<std::char_traits<char32_t>::state_type>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u32string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++11"
    },
    "description": "std::basic_string<char32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u32string_view",
    "link": "cpp/string/basic_string_view",
    "marks": {
      "since": "c++17"
    },
    "description": "std::basic_string_view<char32_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u8streampos",
    "link": "cpp/io/fpos",
    "marks": {
      "since": "c++20"
    },
    "description": "std::fpos<std::char_traits<char8_t>::state_type>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u8string",
    "link": "cpp/string/basic_string",
    "marks": {
      "since": "c++20"
    },
    "description": "std::basic_string<char8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::u8string_view",
    "link": "cpp/string/basic_string_view",
    "marks": {
      "since": "c++20"
    },
    "description": "std::basic_string_view<char8_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_fast16_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_fast32_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_fast64_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_fast8_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "fastest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_least16_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_least32_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_least64_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint_least8_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "smallest unsigned integer type with width of at least 8, 16, 32 and 64 bits respectively"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint16_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "unsigned integer type with width of exactly 8, 16, 32 and 64 bits respectively (provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint32_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "unsigned integer type with width of exactly 8, 16, 32 and 64 bits respectively (provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint64_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "unsigned integer type with width of exactly 8, 16, 32 and 64 bits respectively (provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uint8_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "unsigned integer type with width of exactly 8, 16, 32 and 64 bits respectively (provided if and only if the implementation directly supports the type)"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uintmax_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "maximum-width unsigned integer type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::uintptr_t",
    "link": "cpp/types/integer",
    "marks": {
      "since": "c++11"
    },
    "description": "unsigned integer type capable of holding a pointer to void"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::uncaught_exceptions",
    "link": "cpp/error/uncaught_exception",
    "marks": {
      "since": "c++17"
    },
    "description": "checks if exception handling is currently in progress"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::underflow_error",
    "link": "cpp/error/underflow_error",
    "marks": {},
    "description": "exception class to report arithmetic underflows"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::underlying_type",
    "link": "cpp/types/underlying_type",
    "marks": {
      "since": "c++11"
    },
    "description": "obtains the underlying integer type for a given enumeration type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::underlying_type_t",
    "link": "cpp/types/underlying_type",
    "marks": {
      "since": "c++14"
    },
    "description": "Helper type of std::underlying_type"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::unexpect",
    "link": "cpp/utility/expected/unexpect_t",
    "marks": {
      "since": "c++23"
    },
    "description": "in-place construction tag for unexpected value in expected"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::unexpect_t",
    "link": "cpp/utility/expected/unexpect_t",
    "marks": {
      "since": "c++23"
    },
    "description": "in-place construction tag for unexpected value in expected"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unexpected",
    "link": "cpp/utility/expected/unexpected",
    "marks": {
      "since": "c++23"
    },
    "description": "represented as an unexpected value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ungetc",
    "link": "cpp/io/c/ungetc",
    "marks": {},
    "description": "puts a character back into a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::ungetwc",
    "link": "cpp/io/c/ungetwc",
    "marks": {},
    "description": "puts a wide character back into a file stream"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::uniform_int_distribution",
    "link": "cpp/numeric/random/uniform_int_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces integer values evenly distributed across a range"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::uniform_random_bit_generator",
    "link": "cpp/numeric/random/uniform_random_bit_generator",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type qualifies as a uniform random bit generator"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::uniform_real_distribution",
    "link": "cpp/numeric/random/uniform_real_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values evenly distributed across a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_construct_using_allocator",
    "link": "cpp/memory/uninitialized_construct_using_allocator",
    "marks": {
      "since": "c++20"
    },
    "description": "creates an object of the given type at specified memory location by means of uses-allocator construction"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_copy",
    "link": "cpp/memory/uninitialized_copy",
    "marks": {},
    "description": "copies a range of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_copy_n",
    "link": "cpp/memory/uninitialized_copy_n",
    "marks": {
      "since": "c++11"
    },
    "description": "copies a number of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_default_construct",
    "link": "cpp/memory/uninitialized_default_construct",
    "marks": {
      "since": "c++17"
    },
    "description": "constructs objects by default-initialization in an uninitialized area of memory, defined by a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_default_construct_n",
    "link": "cpp/memory/uninitialized_default_construct_n",
    "marks": {
      "since": "c++17"
    },
    "description": "constructs objects by default-initialization in an uninitialized area of memory, defined by a start and a count"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_fill",
    "link": "cpp/memory/uninitialized_fill",
    "marks": {},
    "description": "copies an object to an uninitialized area of memory, defined by a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_fill_n",
    "link": "cpp/memory/uninitialized_fill_n",
    "marks": {},
    "description": "copies an object to an uninitialized area of memory, defined by a start and a count"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_move",
    "link": "cpp/memory/uninitialized_move",
    "marks": {
      "since": "c++17"
    },
    "description": "moves a range of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_move_n",
    "link": "cpp/memory/uninitialized_move_n",
    "marks": {
      "since": "c++17"
    },
    "description": "moves a number of objects to an uninitialized area of memory"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_value_construct",
    "link": "cpp/memory/uninitialized_value_construct",
    "marks": {
      "since": "c++17"
    },
    "description": "constructs objects by value-initialization in an uninitialized area of memory, defined by a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uninitialized_value_construct_n",
    "link": "cpp/memory/uninitialized_value_construct_n",
    "marks": {
      "since": "c++17"
    },
    "description": "constructs objects by value-initialization in an uninitialized area of memory, defined by a start and a count"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::unique",
    "link": "cpp/algorithm/unique",
    "marks": {},
    "description": "removes consecutive duplicate elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::unique_copy",
    "link": "cpp/algorithm/unique_copy",
    "marks": {},
    "description": "creates a copy of some range of elements that contains no consecutive duplicates"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unique_lock",
    "link": "cpp/thread/unique_lock",
    "marks": {
      "since": "c++11"
    },
    "description": "implements movable mutex ownership wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unique_ptr",
    "link": "cpp/memory/unique_ptr",
    "marks": {
      "since": "c++11"
    },
    "description": "smart pointer with unique object ownership semantics"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::unitbuf",
    "link": "cpp/io/manip/unitbuf",
    "marks": {},
    "description": "controls whether output is flushed after each operation"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unordered_map",
    "link": "cpp/container/unordered_map",
    "marks": {
      "since": "c++11"
    },
    "description": "collection of key-value pairs, hashed by keys, keys are unique"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unordered_multimap",
    "link": "cpp/container/unordered_multimap",
    "marks": {
      "since": "c++11"
    },
    "description": "collection of key-value pairs, hashed by keys"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unordered_multiset",
    "link": "cpp/container/unordered_multiset",
    "marks": {
      "since": "c++11"
    },
    "description": "collection of keys, hashed by keys"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unordered_set",
    "link": "cpp/container/unordered_set",
    "marks": {
      "since": "c++11"
    },
    "description": "collection of unique keys, hashed by keys"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::unreachable",
    "link": "cpp/utility/unreachable",
    "marks": {
      "since": "c++23"
    },
    "description": "marks unreachable point of execution"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::unreachable_sentinel",
    "link": "cpp/iterator/unreachable_sentinel_t",
    "marks": {
      "since": "c++20"
    },
    "description": "an object of type unreachable_sentinel_t that always compares unequal to any weakly_incrementable type"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::unreachable_sentinel_t",
    "link": "cpp/iterator/unreachable_sentinel_t",
    "marks": {
      "since": "c++20"
    },
    "description": "sentinel that always compares unequal to any weakly_incrementable type"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::unsigned_integral",
    "link": "cpp/concepts/unsigned_integral",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a type is an integral type that is unsigned"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unwrap_ref_decay",
    "link": "cpp/utility/functional/unwrap_reference",
    "marks": {
      "since": "c++20"
    },
    "description": "get the reference type wrapped in std::reference_wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::unwrap_ref_decay_t",
    "link": "cpp/utility/functional/unwrap_reference",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper type of std::unwrap_ref_decay"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unwrap_reference",
    "link": "cpp/utility/functional/unwrap_reference",
    "marks": {
      "since": "c++20"
    },
    "description": "get the reference type wrapped in std::reference_wrapper"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::unwrap_reference_t",
    "link": "cpp/utility/functional/unwrap_reference",
    "marks": {
      "since": "c++20"
    },
    "description": "Helper type of std::unwrap_reference"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::upper_bound",
    "link": "cpp/algorithm/upper_bound",
    "marks": {},
    "description": "returns an iterator to the first element greater than a certain value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::uppercase",
    "link": "cpp/io/manip/uppercase",
    "marks": {},
    "description": "controls whether uppercase characters are used with some output formats"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::use_facet",
    "link": "cpp/locale/use_facet",
    "marks": {},
    "description": "obtains a facet from a locale"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::uses_allocator",
    "link": "cpp/memory/uses_allocator",
    "marks": {
      "since": "c++11"
    },
    "description": "checks if the specified type supports uses-allocator construction"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::uses_allocator_v",
    "link": "cpp/memory/uses_allocator",
    "marks": {
      "since": "c++17"
    },
    "description": "Helper variable template of std::uses_allocator"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::uses_allocator_construction_args",
    "link": "cpp/memory/uses_allocator_construction_args",
    "marks": {
      "since": "c++20"
    },
    "description": "prepares the argument list matching the flavor of uses-allocator construction required by the given type"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::va_list",
    "link": "cpp/utility/variadic/va_list",
    "marks": {},
    "description": "holds the information needed by va_start, va_arg, va_end, and va_copy"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::valarray",
    "link": "cpp/numeric/valarray",
    "marks": {},
    "description": "Numeric arrays and array slices"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::variant",
    "link": "cpp/utility/variant",
    "marks": {
      "since": "c++17"
    },
    "description": "a type-safe discriminated union"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::variant_alternative",
    "link": "cpp/utility/variant/variant_alternative",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains the type of the alternative specified by its index, at compile time"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::variant_alternative_t",
    "link": "cpp/utility/variant/variant_alternative",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains the type of the alternative specified by its index, at compile time"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::variant_npos",
    "link": "cpp/utility/variant/variant_npos",
    "marks": {
      "since": "c++17"
    },
    "description": "index of the variant in the invalid state"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::variant_size",
    "link": "cpp/utility/variant/variant_size",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains the size of the variant's list of alternatives at compile time"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::variant_size_v",
    "link": "cpp/utility/variant/variant_size",
    "marks": {
      "since": "c++17"
    },
    "description": "obtains the size of the variant's list of alternatives at compile time"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::vector",
    "link": "cpp/container/vector",
    "marks": {},
    "description": "dynamic contiguous array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vformat",
    "link": "cpp/utility/format/vformat",
    "marks": {
      "since": "c++20"
    },
    "description": "non-template variant of std::format using type-erased argument representation"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::vformat_to",
    "link": "cpp/utility/format/vformat_to",
    "marks": {
      "since": "c++20"
    },
    "description": "non-template variant of std::format_to using type-erased argument representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vfprintf",
    "link": "cpp/io/c/vfprintf",
    "marks": {},
    "description": "prints formatted output to stdout, a file stream or a buffer\nusing variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vfscanf",
    "link": "cpp/io/c/vfscanf",
    "marks": {
      "since": "c++11"
    },
    "description": "reads formatted input from stdin, a file stream or a buffer\nusing variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vfwprintf",
    "link": "cpp/io/c/vfwprintf",
    "marks": {},
    "description": "prints formatted wide character output to stdout, a file stream\nor a buffer using variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vfwscanf",
    "link": "cpp/io/c/vfwscanf",
    "marks": {
      "since": "c++11"
    },
    "description": "reads formatted wide character input from stdin, a file stream\nor a buffer using variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "namespace",
    "name": "std::views",
    "link": "cpp/symbol_index/views",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::adjacent",
    "link": "cpp/ranges/adjacent_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of references to adjacent elements of the adapted view"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::adjacent_transform",
    "link": "cpp/ranges/adjacent_transform_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of results of application of a transformation function to adjacent elements of the adapted view"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::all",
    "link": "cpp/ranges/all_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that includes all elements of a range"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::views::all_t",
    "link": "cpp/ranges/all_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that includes all elements of a range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::as_const",
    "link": "cpp/ranges/as_const_view",
    "marks": {
      "since": "c++23"
    },
    "description": "converts a view into a constant_range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::as_rvalue",
    "link": "cpp/ranges/as_rvalue_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view of a sequence that casts each element to an rvalue"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::cartesian_product",
    "link": "cpp/ranges/cartesian_product_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of results calculated by the n-ary cartesian product of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::chunk",
    "link": "cpp/ranges/chunk_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a range of views that are N-sized non-overlapping successive chunks of the elements of another view"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::chunk_by",
    "link": "cpp/ranges/chunk_by_view",
    "marks": {
      "since": "c++23"
    },
    "description": "splits the view into subranges between each pair of adjacent elements for which the given predicate returns false"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::common",
    "link": "cpp/ranges/common_view",
    "marks": {
      "since": "c++20"
    },
    "description": "converts a view into a common_range"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::concat",
    "link": "cpp/ranges/concat_view",
    "marks": {
      "since": "c++26"
    },
    "description": "a view consisting of concatenation of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::counted",
    "link": "cpp/ranges/view counted",
    "marks": {
      "since": "c++20"
    },
    "description": "creates a subrange from an iterator and a count"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::drop",
    "link": "cpp/ranges/drop_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of elements of another view, skipping the first N elements"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::drop_while",
    "link": "cpp/ranges/drop_while_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the elements of another view, skipping the initial subsequence of elements until the first element where the predicate returns false"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::elements",
    "link": "cpp/ranges/elements_view",
    "marks": {
      "since": "c++20"
    },
    "description": "takes a view consisting of tuple-like values and a number N and produces a view of Nth element of each tuple"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::views::empty",
    "link": "cpp/ranges/empty_view",
    "marks": {
      "since": "c++20"
    },
    "description": "an empty view with no elements"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::filter",
    "link": "cpp/ranges/filter_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that consists of the elements of a range that satisfies a predicate"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::iota",
    "link": "cpp/ranges/iota_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of a sequence generated by repeatedly incrementing an initial value"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::istream",
    "link": "cpp/ranges/basic_istream_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the elements obtained by successive application of operator>> on the associated input stream"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::join",
    "link": "cpp/ranges/join_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the sequence obtained from flattening a view of ranges"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::join_with",
    "link": "cpp/ranges/join_with_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of the sequence obtained from flattening a view of ranges, with the delimiter in between elements"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::keys",
    "link": "cpp/ranges/keys_view",
    "marks": {
      "since": "c++20"
    },
    "description": "takes a view consisting of pair-like values and produces a view of the first elements of each pair"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::lazy_split",
    "link": "cpp/ranges/lazy_split_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view over the subranges obtained from splitting another view using a delimiter"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::pairwise",
    "link": "cpp/ranges/adjacent_view",
    "marks": {
      "since": "c++23"
    },
    "description": "std::views::adjacent<2>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::pairwise_transform",
    "link": "cpp/ranges/adjacent_transform_view",
    "marks": {
      "since": "c++23"
    },
    "description": "std::views::adjacent_transform<2>"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::repeat",
    "link": "cpp/ranges/repeat_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of a generated sequence by repeatedly producing the same value"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::reverse",
    "link": "cpp/ranges/reverse_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that iterates over the elements of another bidirectional view in reverse order"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::single",
    "link": "cpp/ranges/single_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view that contains a single element of a specified value"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::slide",
    "link": "cpp/ranges/slide_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view whose Mth element is a view over the Mth through (M + N - 1)th elements of another view"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::split",
    "link": "cpp/ranges/split_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view over the subranges obtained from splitting another view using a delimiter"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::stride",
    "link": "cpp/ranges/stride_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of elements of another view, advancing over N elements at a time"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::take",
    "link": "cpp/ranges/take_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the first N elements of another view"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::take_while",
    "link": "cpp/ranges/take_while_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view consisting of the initial elements of another view, until the first element on which a predicate returns false"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::transform",
    "link": "cpp/ranges/transform_view",
    "marks": {
      "since": "c++20"
    },
    "description": "a view of a sequence that applies a transformation function to each element"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::values",
    "link": "cpp/ranges/values_view",
    "marks": {
      "since": "c++20"
    },
    "description": "takes a view consisting of pair-like values and produces a view of the second elements of each pair"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::zip",
    "link": "cpp/ranges/zip_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of references to corresponding elements of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::views::zip_transform",
    "link": "cpp/ranges/zip_transform_view",
    "marks": {
      "since": "c++23"
    },
    "description": "a view consisting of tuples of results of application of a transformation function to corresponding elements of the adapted views"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::visit",
    "link": "cpp/utility/variant/visit",
    "marks": {
      "since": "c++17"
    },
    "description": "calls the provided functor with the arguments held by one or more variants"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::visit_format_arg",
    "link": "cpp/utility/format/visit_format_arg",
    "marks": {
      "since": "c++20"
    },
    "description": "argument visitation interface for user-defined formatters"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::void_t",
    "link": "cpp/types/void_t",
    "marks": {
      "since": "c++17"
    },
    "description": "void variadic alias template"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vprint_nonunicode",
    "link": "cpp/io/vprint_nonunicode",
    "marks": {
      "since": "c++23"
    },
    "description": "prints to stdout or a file stream using type-erased argument representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vprint_unicode",
    "link": "cpp/io/vprint_unicode",
    "marks": {
      "since": "c++23"
    },
    "description": "prints to Unicode capable stdout or a file stream using type-erased argument representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vprintf",
    "link": "cpp/io/c/vfprintf",
    "marks": {},
    "description": "prints formatted output to stdout, a file stream or a buffer\nusing variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vscanf",
    "link": "cpp/io/c/vfscanf",
    "marks": {
      "since": "c++11"
    },
    "description": "reads formatted input from stdin, a file stream or a buffer\nusing variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vsnprintf",
    "link": "cpp/io/c/vfprintf",
    "marks": {
      "since": "c++11"
    },
    "description": "prints formatted output to stdout, a file stream or a buffer\nusing variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vsprintf",
    "link": "cpp/io/c/vfprintf",
    "marks": {},
    "description": "prints formatted output to stdout, a file stream or a buffer\nusing variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vsscanf",
    "link": "cpp/io/c/vfscanf",
    "marks": {
      "since": "c++11"
    },
    "description": "reads formatted input from stdin, a file stream or a buffer\nusing variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vswprintf",
    "link": "cpp/io/c/vfwprintf",
    "marks": {},
    "description": "prints formatted wide character output to stdout, a file stream\nor a buffer using variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vswscanf",
    "link": "cpp/io/c/vfwscanf",
    "marks": {
      "since": "c++11"
    },
    "description": "reads formatted wide character input from stdin, a file stream\nor a buffer using variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vwprintf",
    "link": "cpp/io/c/vfwprintf",
    "marks": {},
    "description": "prints formatted wide character output to stdout, a file stream\nor a buffer using variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::vwscanf",
    "link": "cpp/io/c/vfwscanf",
    "marks": {
      "since": "c++11"
    },
    "description": "reads formatted wide character input from stdin, a file stream\nor a buffer using variable argument list"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::wbuffer_convert",
    "link": "cpp/locale/wbuffer_convert",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17"
    },
    "description": "performs conversion between a byte stream buffer and a wide stream buffer"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::wcerr",
    "link": "cpp/io/cerr",
    "marks": {},
    "description": "writes to the standard C error stream stderr, unbuffered"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::wcin",
    "link": "cpp/io/cin",
    "marks": {},
    "description": "reads from the standard C input stream stdin"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::wclog",
    "link": "cpp/io/clog",
    "marks": {},
    "description": "writes to the standard C error stream stderr"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wcmatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++11"
    },
    "description": "std::match_results<const wchar_t*>"
  },
  {
    "type": "symbol",
    "symbolType": "object",
    "name": "std::wcout",
    "link": "cpp/io/cout",
    "marks": {},
    "description": "writes to the standard C output stream stdout"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wcregex_iterator",
    "link": "cpp/regex/regex_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_iterator<const wchar_t*>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wcregex_token_iterator",
    "link": "cpp/regex/regex_token_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_token_iterator<const wchar_t*>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcrtomb",
    "link": "cpp/string/multibyte/wcrtomb",
    "marks": {},
    "description": "converts a wide character to its multibyte representation, given state"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcscat",
    "link": "cpp/string/wide/wcscat",
    "marks": {},
    "description": "appends a copy of one wide string to another"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcschr",
    "link": "cpp/string/wide/wcschr",
    "marks": {},
    "description": "finds the first occurrence of a wide character in a wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcscmp",
    "link": "cpp/string/wide/wcscmp",
    "marks": {},
    "description": "compares two wide strings"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcscoll",
    "link": "cpp/string/wide/wcscoll",
    "marks": {},
    "description": "compares two wide strings in accordance to the current locale"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcscpy",
    "link": "cpp/string/wide/wcscpy",
    "marks": {},
    "description": "copies one wide string to another"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcscspn",
    "link": "cpp/string/wide/wcscspn",
    "marks": {},
    "description": "returns the length of the maximum initial segment that consists\nof only the wide not found in another wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsftime",
    "link": "cpp/chrono/c/wcsftime",
    "marks": {},
    "description": "converts a std::tm object to custom wide string textual representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcslen",
    "link": "cpp/string/wide/wcslen",
    "marks": {},
    "description": "returns the length of a wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsncat",
    "link": "cpp/string/wide/wcsncat",
    "marks": {},
    "description": "appends a certain amount of wide characters from one wide string to another"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsncmp",
    "link": "cpp/string/wide/wcsncmp",
    "marks": {},
    "description": "compares a certain amount of characters from two wide strings"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsncpy",
    "link": "cpp/string/wide/wcsncpy",
    "marks": {},
    "description": "copies a certain amount of wide characters from one string to another"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcspbrk",
    "link": "cpp/string/wide/wcspbrk",
    "marks": {},
    "description": "finds the first location of any wide character in one wide string, in another wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsrchr",
    "link": "cpp/string/wide/wcsrchr",
    "marks": {},
    "description": "finds the last occurrence of a wide character in a wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsrtombs",
    "link": "cpp/string/multibyte/wcsrtombs",
    "marks": {},
    "description": "converts a wide string to narrow multibyte character string, given state"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsspn",
    "link": "cpp/string/wide/wcsspn",
    "marks": {},
    "description": "returns the length of the maximum initial segment that consists\nof only the wide characters found in another wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsstr",
    "link": "cpp/string/wide/wcsstr",
    "marks": {},
    "description": "finds the first occurrence of a wide string within another wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstod",
    "link": "cpp/string/wide/wcstof",
    "marks": {},
    "description": "converts a wide string to a floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstof",
    "link": "cpp/string/wide/wcstof",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a wide string to a floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstoimax",
    "link": "cpp/string/wide/wcstoimax",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a wide string to std::intmax_t or std::uintmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstok",
    "link": "cpp/string/wide/wcstok",
    "marks": {},
    "description": "finds the next token in a wide string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstol",
    "link": "cpp/string/wide/wcstol",
    "marks": {},
    "description": "converts a wide string to an integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstold",
    "link": "cpp/string/wide/wcstof",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a wide string to a floating-point value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstoll",
    "link": "cpp/string/wide/wcstol",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a wide string to an integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstombs",
    "link": "cpp/string/multibyte/wcstombs",
    "marks": {},
    "description": "converts a wide string to narrow multibyte character string"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstoul",
    "link": "cpp/string/wide/wcstoul",
    "marks": {},
    "description": "converts a wide string to an unsigned integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstoull",
    "link": "cpp/string/wide/wcstoul",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a wide string to an unsigned integer value"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcstoumax",
    "link": "cpp/string/wide/wcstoimax",
    "marks": {
      "since": "c++11"
    },
    "description": "converts a wide string to std::intmax_t or std::uintmax_t"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wcsub_match",
    "link": "cpp/regex/sub_match",
    "marks": {
      "since": "c++11"
    },
    "description": "std::sub_match<const wchar_t*>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wcsxfrm",
    "link": "cpp/string/wide/wcsxfrm",
    "marks": {},
    "description": "transform a wide string so that wcscmp would produce the same result as wcscoll"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wctob",
    "link": "cpp/string/multibyte/wctob",
    "marks": {},
    "description": "narrows a wide character to a single-byte narrow character, if possible"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wctomb",
    "link": "cpp/string/multibyte/wctomb",
    "marks": {},
    "description": "converts a wide character to its multibyte representation"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wctrans",
    "link": "cpp/string/wide/wctrans",
    "marks": {},
    "description": "looks up a character mapping category in the current C locale"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wctrans_t",
    "link": "cpp/string/wide",
    "marks": {},
    "description": "scalar type that holds locale-specific character mapping"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wctype",
    "link": "cpp/string/wide/wctype",
    "marks": {},
    "description": "looks up a character classification category in the current C locale"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wctype_t",
    "link": "cpp/string/wide",
    "marks": {},
    "description": "scalar type that holds locale-specific character classification"
  },
  {
    "type": "symbol",
    "symbolType": "constant",
    "name": "std::weak_order",
    "link": "cpp/utility/compare/weak_order",
    "marks": {
      "since": "c++20"
    },
    "description": "performs 3-way comparison and produces a result of type std::weak_ordering"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::weak_ordering",
    "link": "cpp/utility/compare/weak_ordering",
    "marks": {
      "since": "c++20"
    },
    "description": "the result type of 3-way comparison that supports all 6 operators and is not substitutable"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::weak_ptr",
    "link": "cpp/memory/weak_ptr",
    "marks": {
      "since": "c++11"
    },
    "description": "weak reference to an object managed by std::shared_ptr"
  },
  {
    "type": "symbol",
    "symbolType": "concept",
    "name": "std::weakly_incrementable",
    "link": "cpp/iterator/weakly_incrementable",
    "marks": {
      "since": "c++20"
    },
    "description": "specifies that a semiregular type can be incremented with pre- and post-increment operators"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::weibull_distribution",
    "link": "cpp/numeric/random/weibull_distribution",
    "marks": {
      "since": "c++11"
    },
    "description": "produces real values on a Weibull distribution"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wfilebuf",
    "link": "cpp/io/basic_filebuf",
    "marks": {},
    "description": "std::basic_filebuf<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wformat_args",
    "link": "cpp/utility/format/basic_format_args",
    "marks": {
      "since": "c++20"
    },
    "description": "class that provides access to all formatting arguments"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wformat_context",
    "link": "cpp/utility/format/basic_format_context",
    "marks": {
      "since": "c++20"
    },
    "description": "formatting state, including all formatting arguments and the output iterator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wformat_parse_context",
    "link": "cpp/utility/format/basic_format_parse_context",
    "marks": {
      "since": "c++20"
    },
    "description": "formatting string parser state"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::wformat_string",
    "link": "cpp/utility/format/basic_format_string",
    "marks": {
      "since": "c++20"
    },
    "description": "class template that performs compile-time format string checks at construction time"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wfstream",
    "link": "cpp/io/basic_fstream",
    "marks": {},
    "description": "std::basic_fstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wifstream",
    "link": "cpp/io/basic_ifstream",
    "marks": {},
    "description": "std::basic_ifstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wint_t",
    "link": "cpp/string/wide",
    "marks": {},
    "description": "integer type that can hold any valid wide character and at least one more value"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wios",
    "link": "cpp/io/basic_ios",
    "marks": {},
    "description": "std::basic_ios<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wiostream",
    "link": "cpp/io/basic_iostream",
    "marks": {},
    "description": "std::basic_iostream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wispanstream",
    "link": "cpp/io/basic_ispanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_ispanstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wistream",
    "link": "cpp/io/basic_istream",
    "marks": {},
    "description": "std::basic_istream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wistringstream",
    "link": "cpp/io/basic_istringstream",
    "marks": {},
    "description": "std::basic_istringstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wmemchr",
    "link": "cpp/string/wide/wmemchr",
    "marks": {},
    "description": "finds the first occurrence of a wide character in a wide character array"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wmemcmp",
    "link": "cpp/string/wide/wmemcmp",
    "marks": {},
    "description": "compares a certain amount of wide characters from two arrays"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wmemcpy",
    "link": "cpp/string/wide/wmemcpy",
    "marks": {},
    "description": "copies a certain amount of wide characters between two non-overlapping arrays"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wmemmove",
    "link": "cpp/string/wide/wmemmove",
    "marks": {},
    "description": "copies a certain amount of wide characters between two, possibly overlapping, arrays"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wmemset",
    "link": "cpp/string/wide/wmemset",
    "marks": {},
    "description": "copies the given wide character to every position in a wide character array"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wofstream",
    "link": "cpp/io/basic_ofstream",
    "marks": {},
    "description": "std::basic_ofstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wospanstream",
    "link": "cpp/io/basic_ospanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_ospanstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wostream",
    "link": "cpp/io/basic_ostream",
    "marks": {},
    "description": "std::basic_ostream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wosyncstream",
    "link": "cpp/io/basic_osyncstream",
    "marks": {
      "since": "c++20"
    },
    "description": "std::basic_osyncstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::ws",
    "link": "cpp/io/manip/ws",
    "marks": {},
    "description": "consumes whitespace"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wspanbuf",
    "link": "cpp/io/basic_spanbuf",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_spanbuf<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wspanstream",
    "link": "cpp/io/basic_spanstream",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_spanstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wstreambuf",
    "link": "cpp/io/basic_streambuf",
    "marks": {},
    "description": "std::basic_streambuf<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wstreampos",
    "link": "cpp/io/fpos",
    "marks": {},
    "description": "std::fpos<std::char_traits<wchar_t>::state_type>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wostringstream",
    "link": "cpp/io/basic_ostringstream",
    "marks": {},
    "description": "std::basic_ostringstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wprintf",
    "link": "cpp/io/c/fwprintf",
    "marks": {},
    "description": "prints formatted wide character output to stdout, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wregex",
    "link": "cpp/regex/basic_regex",
    "marks": {
      "since": "c++11"
    },
    "description": "std::basic_regex<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::wscanf",
    "link": "cpp/io/c/fwscanf",
    "marks": {},
    "description": "reads formatted wide character input from stdin, a file stream or a buffer"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wsmatch",
    "link": "cpp/regex/match_results",
    "marks": {
      "since": "c++11"
    },
    "description": "std::match_results<std::wstring::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wsregex_iterator",
    "link": "cpp/regex/regex_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_iterator<std::wstring::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wsregex_token_iterator",
    "link": "cpp/regex/regex_token_iterator",
    "marks": {
      "since": "c++11"
    },
    "description": "std::regex_token_iterator<std::wstring::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wssub_match",
    "link": "cpp/regex/sub_match",
    "marks": {
      "since": "c++11"
    },
    "description": "std::sub_match<std::wstring::const_iterator>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wstring",
    "link": "cpp/string/basic_string",
    "marks": {},
    "description": "std::basic_string<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::wstring_convert",
    "link": "cpp/locale/wstring_convert",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17"
    },
    "description": "performs conversions between a wide string and a byte string"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wstring_view",
    "link": "cpp/string/basic_string_view",
    "marks": {
      "since": "c++17"
    },
    "description": "std::basic_string_view<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wstringbuf",
    "link": "cpp/io/basic_stringbuf",
    "marks": {},
    "description": "std::basic_stringbuf<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wstringstream",
    "link": "cpp/io/basic_stringstream",
    "marks": {},
    "description": "std::basic_stringstream<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::wsyncbuf",
    "link": "cpp/io/basic_syncbuf",
    "marks": {
      "since": "c++20"
    },
    "description": "std::basic_syncbuf<wchar_t>"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::yocto",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000000000000000000000000>, if std::intmax_t can represent the denominator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::yotta",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000000000000000000000000, 1>, if std::intmax_t can represent the numerator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::zepto",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1, 1000000000000000000000>, if std::intmax_t can represent the denominator"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::zetta",
    "link": "cpp/numeric/ratio/ratio",
    "marks": {
      "since": "c++11"
    },
    "description": "std::ratio<1000000000000000000000, 1>, if std::intmax_t can represent the numerator"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::gets",
    "link": "cpp/io/c/gets",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++14"
    },
    "description": "reads a character string from stdin"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::auto_ptr",
    "link": "cpp/memory/auto_ptr",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "smart pointer with strict object ownership semantics"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::binary_function",
    "link": "cpp/utility/functional/binary_function",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "adaptor-compatible binary function base class"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bind1st",
    "link": "cpp/utility/functional/bind12",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "binds one argument to a binary function"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::bind2nd",
    "link": "cpp/utility/functional/bind12",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "binds one argument to a binary function"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::binder1st",
    "link": "cpp/utility/functional/binder12",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "function object holding a binary function and one of its arguments"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::binder2nd",
    "link": "cpp/utility/functional/binder12",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "function object holding a binary function and one of its arguments"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::const_mem_fun_ref_t",
    "link": "cpp/utility/functional/mem_fun_ref_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a reference to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::const_mem_fun_t",
    "link": "cpp/utility/functional/mem_fun_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a pointer to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::const_mem_fun1_ref_t",
    "link": "cpp/utility/functional/mem_fun_ref_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a reference to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::const_mem_fun1_t",
    "link": "cpp/utility/functional/mem_fun_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a pointer to object"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::get_unexpected",
    "link": "cpp/error/exception/get_unexpected",
    "marks": {
      "since": "c++11",
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "obtains the current unexpected_handler"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::mem_fun",
    "link": "cpp/utility/functional/mem_fun",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "creates a wrapper from a pointer to member function, callable with a pointer to object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::mem_fun_ref",
    "link": "cpp/utility/functional/mem_fun_ref",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "creates a wrapper from a pointer to member function, callable with a reference to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::mem_fun_ref_t",
    "link": "cpp/utility/functional/mem_fun_ref_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a reference to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::mem_fun_t",
    "link": "cpp/utility/functional/mem_fun_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a pointer to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::mem_fun1_ref_t",
    "link": "cpp/utility/functional/mem_fun_ref_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a reference to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::mem_fun1_t",
    "link": "cpp/utility/functional/mem_fun_t",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "wrapper for a pointer to nullary or unary member function, callable with a pointer to object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::pointer_to_binary_function",
    "link": "cpp/utility/functional/pointer_to_binary_function",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "adaptor-compatible wrapper for a pointer to binary function"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::pointer_to_unary_function",
    "link": "cpp/utility/functional/pointer_to_unary_function",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "adaptor-compatible wrapper for a pointer to unary function"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::ptr_fun",
    "link": "cpp/utility/functional/ptr_fun",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "creates an adaptor-compatible function object wrapper from a pointer to function"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::random_shuffle",
    "link": "cpp/algorithm/random_shuffle",
    "marks": {
      "deprecated": "c++14",
      "removed": "c++17"
    },
    "description": "randomly re-orders elements in a range"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::set_unexpected",
    "link": "cpp/error/exception/set_unexpected",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "changes the function to be called by std::unexpected"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unary_function",
    "link": "cpp/utility/functional/unary_function",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "adaptor-compatible unary function base class"
  },
  {
    "type": "symbol",
    "symbolType": "typeAlias",
    "name": "std::unexpected_handler",
    "link": "cpp/error/exception/unexpected_handler",
    "marks": {
      "deprecated": "c++11",
      "removed": "c++17"
    },
    "description": "the type of the function called by std::unexpected"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::binary_negate",
    "link": "cpp/utility/functional/binary_negate",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "wrapper function object returning the complement of the binary predicate it holds"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::get_temporary_buffer",
    "link": "cpp/memory/get_temporary_buffer",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "obtains uninitialized storage"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::is_literal_type",
    "link": "cpp/types/is_literal_type",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "checks if a type is a literal type"
  },
  {
    "type": "symbol",
    "symbolType": "variableTemplate",
    "name": "std::is_literal_type_v",
    "link": "cpp/types/is_literal_type",
    "marks": {
      "since": "c++17",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "Helper variable template of std::is_literal_type"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::not1",
    "link": "cpp/utility/functional/not1",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "constructs custom std::unary_negate object"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::not2",
    "link": "cpp/utility/functional/not2",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "constructs custom std::binary_negate object"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::raw_storage_iterator",
    "link": "cpp/memory/raw_storage_iterator",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "an iterator that allows standard algorithms to store results in uninitialized memory"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::result_of",
    "link": "cpp/types/result_of",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "deduces the result type of invoking a callable object with a set of arguments"
  },
  {
    "type": "symbol",
    "symbolType": "typeAliasTemplate",
    "name": "std::result_of_t",
    "link": "cpp/types/result_of",
    "marks": {
      "since": "c++14",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "Helper type of std::result_of"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::return_temporary_buffer",
    "link": "cpp/memory/return_temporary_buffer",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "frees uninitialized storage"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::unary_negate",
    "link": "cpp/utility/functional/unary_negate",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "wrapper function object returning the complement of the unary predicate it holds"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::uncaught_exception",
    "link": "cpp/error/exception/uncaught_exception",
    "marks": {
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "checks if exception handling is currently in progress"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::declare_no_pointers",
    "link": "cpp/memory/gc/declare_no_pointers",
    "marks": {
      "since": "c++11",
      "removed": "c++23"
    },
    "description": "declares that a memory area does not contain traceable pointers"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::declare_reachable",
    "link": "cpp/memory/gc/declare_reachable",
    "marks": {
      "since": "c++11",
      "removed": "c++23"
    },
    "description": "declares that an object can not be recycled"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::get_pointer_safety",
    "link": "cpp/memory/gc/get_pointer_safety",
    "marks": {
      "since": "c++11",
      "removed": "c++23"
    },
    "description": "returns the current pointer safety model"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::pointer_safety",
    "link": "cpp/memory/gc/pointer_safety",
    "marks": {
      "since": "c++11",
      "removed": "c++23"
    },
    "description": "lists pointer safety models"
  },
  {
    "type": "symbol",
    "symbolType": "function",
    "name": "std::undeclare_no_pointers",
    "link": "cpp/memory/gc/undeclare_no_pointers",
    "marks": {
      "since": "c++11",
      "removed": "c++23"
    },
    "description": "cancels the effect of std::declare_no_pointers"
  },
  {
    "type": "symbol",
    "symbolType": "functionTemplate",
    "name": "std::undeclare_reachable",
    "link": "cpp/memory/gc/undeclare_reachable",
    "marks": {
      "since": "c++11",
      "removed": "c++23"
    },
    "description": "declares that an object can be recycled"
  },
  {
    "type": "symbol",
    "symbolType": "enumeration",
    "name": "std::codecvt_mode",
    "link": "cpp/locale/codecvt_mode",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++26"
    },
    "description": "tags to alter behavior of the standard codecvt facets"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::codecvt_utf16",
    "link": "cpp/locale/codecvt_utf16",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++26"
    },
    "description": "converts between UTF-16 and UCS-2/UCS-4"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::codecvt_utf8",
    "link": "cpp/locale/codecvt_utf8",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++26"
    },
    "description": "converts between UTF-8 and UCS-2/UCS-4"
  },
  {
    "type": "symbol",
    "symbolType": "classTemplate",
    "name": "std::codecvt_utf8_utf16",
    "link": "cpp/locale/codecvt_utf8_utf16",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++26"
    },
    "description": "converts between UTF-8 and UTF-16"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::istrstream",
    "link": "cpp/io/istrstream",
    "marks": {
      "deprecated": "c++98",
      "removed": "c++26"
    },
    "description": "implements character array input operations"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::ostrstream",
    "link": "cpp/io/ostrstream",
    "marks": {
      "deprecated": "c++98",
      "removed": "c++26"
    },
    "description": "implements character array output operations"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::strstream",
    "link": "cpp/io/strstream",
    "marks": {
      "deprecated": "c++98",
      "removed": "c++26"
    },
    "description": "implements character array input/output operations"
  },
  {
    "type": "symbol",
    "symbolType": "class",
    "name": "std::strstreambuf",
    "link": "cpp/io/strstreambuf",
    "marks": {
      "deprecated": "c++98",
      "removed": "c++26"
    },
    "description": "implements raw character array device"
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cplusplus",
    "link": "cpp/preprocessor/replace",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDC_HOSTED__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__FILE__",
    "link": "cpp/preprocessor/replace",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__LINE__",
    "link": "cpp/preprocessor/replace",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__DATE__",
    "link": "cpp/preprocessor/replace",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__TIME__",
    "link": "cpp/preprocessor/replace",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_DEFAULT_NEW_ALIGNMENT__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++17"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_BFLOAT16_T__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_FLOAT16_T__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_FLOAT32_T__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_FLOAT64_T__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_FLOAT128_T__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDC__",
    "link": "cpp/preprocessor/replace",
    "marks": {},
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDC_VERSION__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDC_ISO_10646__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDC_MB_MIGHT_NEQ_WC__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_THREADS__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++11"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__STDCPP_STRICT_POINTER_SAFETY__",
    "link": "cpp/preprocessor/replace",
    "marks": {
      "since": "c++11",
      "removed": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_aggregate_bases",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_aggregate_nsdmi",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_aggregate_paren_init",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_alias_templates",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_aligned_new",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_attributes",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_auto_cast",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_binary_literals",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_capture_star_this",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_char",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_concepts",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_conditional_explicit",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_consteval",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_constexpr",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_constexpr_dynamic_alloc",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_constexpr_in_decltype",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_constinit",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_decltype",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_decltype_auto",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_deduction_guides",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_delegating_constructors",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_deleted_function",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++26"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_designated_initializers",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_enumerator_attributes",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_explicit_this_parameter",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_fold_expressions",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_generic_lambdas",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_guaranteed_copy_elision",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_hex_float",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_if_consteval",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_if_constexpr",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_impl_coroutine",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_impl_destroying_delete",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_impl_three_",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_implicit_move",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_inheriting_constructors",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_init_captures",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_initializer_lists",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_inline_variables",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_lambdas",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_modules",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_multidimensional_",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_named_character_escapes",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_namespace_attributes",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_noexcept_function_type",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_nontype_template_args",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_nontype_template_",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_nsdmi",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_pack_indexing",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++26"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_placeholder_variables",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++26"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_range_based_for",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_raw_strings",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_ref_qualifiers",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_return_type_deduction",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_rvalue_references",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_size_t_suffix",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_sized_deallocation",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_static_assert",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_static_call_operator",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++23"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_structured_bindings",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_template_template_args",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_threadsafe_static_init",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_unicode_characters",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_unicode_literals",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_user_defined_literals",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_using_enum",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_variable_templates",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_variadic_friend",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++26"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_variadic_templates",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "symbol",
    "symbolType": "macro",
    "name": "__cpp_variadic_using",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    },
    "description": ""
  },
  {
    "type": "header",
    "link": "cpp/header/type_traits",
    "name": "<type_traits>",
    "marks": {
      "since": "c++11"
    },
    "description": "Compile-time type information"
  },
  {
    "type": "header",
    "link": "cpp/header/concepts",
    "name": "<concepts>",
    "marks": {
      "since": "c++20"
    },
    "description": "Fundamental library concepts"
  },
  {
    "type": "header",
    "link": "cpp/header/coroutine",
    "name": "<coroutine>",
    "marks": {
      "since": "c++20"
    },
    "description": "Coroutine support library"
  },
  {
    "type": "header",
    "link": "cpp/header/any",
    "name": "<any>",
    "marks": {
      "since": "c++17"
    },
    "description": "std::any class"
  },
  {
    "type": "header",
    "link": "cpp/header/bitset",
    "name": "<bitset>",
    "marks": {},
    "description": "std::bitset class template"
  },
  {
    "type": "header",
    "link": "cpp/header/chrono",
    "name": "<chrono>",
    "marks": {
      "since": "c++11"
    },
    "description": "C++ time utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/compare",
    "name": "<compare>",
    "marks": {
      "since": "c++20"
    },
    "description": "Three-way comparison operator support"
  },
  {
    "type": "header",
    "link": "cpp/header/csetjmp",
    "name": "<csetjmp>",
    "marks": {},
    "description": "Macro (and function) that saves (and jumps) to an execution context"
  },
  {
    "type": "header",
    "link": "cpp/header/csignal",
    "name": "<csignal>",
    "marks": {},
    "description": "Functions and macro constants for signal management"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdarg",
    "name": "<cstdarg>",
    "marks": {},
    "description": "Handling of variable length argument lists"
  },
  {
    "type": "header",
    "link": "cpp/header/cstddef",
    "name": "<cstddef>",
    "marks": {},
    "description": "Standard macros and typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdlib",
    "name": "<cstdlib>",
    "marks": {},
    "description": "General purpose utilities: program control, dynamic memory allocation, random numbers, sort and search"
  },
  {
    "type": "header",
    "link": "cpp/header/ctime",
    "name": "<ctime>",
    "marks": {},
    "description": "C-style time/date utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/debugging",
    "name": "<debugging>",
    "marks": {
      "since": "c++26"
    },
    "description": "Debugging library"
  },
  {
    "type": "header",
    "link": "cpp/header/expected",
    "name": "<expected>",
    "marks": {
      "since": "c++23"
    },
    "description": "std::expected class template"
  },
  {
    "type": "header",
    "link": "cpp/header/functional",
    "name": "<functional>",
    "marks": {},
    "description": "Function objects, Function invocations, Bind operations and Reference wrappers"
  },
  {
    "type": "header",
    "link": "cpp/header/initializer_list",
    "name": "<initializer_list>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::initializer_list class template"
  },
  {
    "type": "header",
    "link": "cpp/header/optional",
    "name": "<optional>",
    "marks": {
      "since": "c++17"
    },
    "description": "std::optional class template"
  },
  {
    "type": "header",
    "link": "cpp/header/source_location",
    "name": "<source_location>",
    "marks": {
      "since": "c++20"
    },
    "description": "Supplies means to obtain source code location"
  },
  {
    "type": "header",
    "link": "cpp/header/tuple",
    "name": "<tuple>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::tuple class template"
  },
  {
    "type": "header",
    "link": "cpp/header/typeindex",
    "name": "<typeindex>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::type_index"
  },
  {
    "type": "header",
    "link": "cpp/header/typeinfo",
    "name": "<typeinfo>",
    "marks": {},
    "description": "Runtime type information utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/utility",
    "name": "<utility>",
    "marks": {},
    "description": "Various utility components"
  },
  {
    "type": "header",
    "link": "cpp/header/variant",
    "name": "<variant>",
    "marks": {
      "since": "c++17"
    },
    "description": "std::variant class template"
  },
  {
    "type": "header",
    "link": "cpp/header/version",
    "name": "<version>",
    "marks": {
      "since": "c++20"
    },
    "description": "Supplies implementation-dependent library information"
  },
  {
    "type": "header",
    "link": "cpp/header/memory",
    "name": "<memory>",
    "marks": {},
    "description": "High-level memory management utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/memory_resource",
    "name": "<memory_resource>",
    "marks": {
      "since": "c++17"
    },
    "description": "Polymorphic allocators and memory resources"
  },
  {
    "type": "header",
    "link": "cpp/header/new",
    "name": "<new>",
    "marks": {},
    "description": "Low-level memory management utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/scoped_allocator",
    "name": "<scoped_allocator>",
    "marks": {
      "since": "c++11"
    },
    "description": "Nested allocator class"
  },
  {
    "type": "header",
    "link": "cpp/header/cfloat",
    "name": "<cfloat>",
    "marks": {},
    "description": "Limits of floating-point types"
  },
  {
    "type": "header",
    "link": "cpp/header/cinttypes",
    "name": "<cinttypes>",
    "marks": {
      "since": "c++11"
    },
    "description": "Formatting macros, intmax_t and uintmax_t math and conversions"
  },
  {
    "type": "header",
    "link": "cpp/header/climits",
    "name": "<climits>",
    "marks": {},
    "description": "Limits of integral types"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdint",
    "name": "<cstdint>",
    "marks": {
      "since": "c++11"
    },
    "description": "Fixed-width integer types and limits of other types"
  },
  {
    "type": "header",
    "link": "cpp/header/limits",
    "name": "<limits>",
    "marks": {},
    "description": "Uniform way to query properties of arithmetic types"
  },
  {
    "type": "header",
    "link": "cpp/header/stdfloat",
    "name": "<stdfloat>",
    "marks": {
      "since": "c++23"
    },
    "description": "Optional extended floating-point types"
  },
  {
    "type": "header",
    "link": "cpp/header/cassert",
    "name": "<cassert>",
    "marks": {},
    "description": "Conditionally compiled macro that compares its argument to zero"
  },
  {
    "type": "header",
    "link": "cpp/header/cerrno",
    "name": "<cerrno>",
    "marks": {},
    "description": "Macro containing the last error number"
  },
  {
    "type": "header",
    "link": "cpp/header/exception",
    "name": "<exception>",
    "marks": {},
    "description": "Exception handling utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/stacktrace",
    "name": "<stacktrace>",
    "marks": {
      "since": "c++23"
    },
    "description": "Stacktrace library"
  },
  {
    "type": "header",
    "link": "cpp/header/stdexcept",
    "name": "<stdexcept>",
    "marks": {},
    "description": "Standard exception objects"
  },
  {
    "type": "header",
    "link": "cpp/header/system_error",
    "name": "<system_error>",
    "marks": {
      "since": "c++11"
    },
    "description": "Defines std::error_code, a platform-dependent error code"
  },
  {
    "type": "header",
    "link": "cpp/header/cctype",
    "name": "<cctype>",
    "marks": {},
    "description": "Functions to determine the category of narrow characters"
  },
  {
    "type": "header",
    "link": "cpp/header/charconv",
    "name": "<charconv>",
    "marks": {
      "since": "c++17"
    },
    "description": "std::to_chars and std::from_chars"
  },
  {
    "type": "header",
    "link": "cpp/header/cstring",
    "name": "<cstring>",
    "marks": {},
    "description": "Various narrow character string handling functions"
  },
  {
    "type": "header",
    "link": "cpp/header/cuchar",
    "name": "<cuchar>",
    "marks": {
      "since": "c++11"
    },
    "description": "C-style Unicode character conversion functions"
  },
  {
    "type": "header",
    "link": "cpp/header/cwchar",
    "name": "<cwchar>",
    "marks": {},
    "description": "Various wide and multibyte string handling functions"
  },
  {
    "type": "header",
    "link": "cpp/header/cwctype",
    "name": "<cwctype>",
    "marks": {},
    "description": "Functions to determine the category of wide characters"
  },
  {
    "type": "header",
    "link": "cpp/header/format",
    "name": "<format>",
    "marks": {
      "since": "c++20"
    },
    "description": "Formatting library including std::format"
  },
  {
    "type": "header",
    "link": "cpp/header/string",
    "name": "<string>",
    "marks": {},
    "description": "std::basic_string class template"
  },
  {
    "type": "header",
    "link": "cpp/header/string_view",
    "name": "<string_view>",
    "marks": {
      "since": "c++17"
    },
    "description": "std::basic_string_view class template"
  },
  {
    "type": "header",
    "link": "cpp/header/array",
    "name": "<array>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::array container"
  },
  {
    "type": "header",
    "link": "cpp/header/deque",
    "name": "<deque>",
    "marks": {},
    "description": "std::deque container"
  },
  {
    "type": "header",
    "link": "cpp/header/flat_map",
    "name": "<flat_map>",
    "marks": {
      "since": "c++23"
    },
    "description": "std::flat_map and std::flat_multimap container adaptors"
  },
  {
    "type": "header",
    "link": "cpp/header/flat_set",
    "name": "<flat_set>",
    "marks": {
      "since": "c++23"
    },
    "description": "std::flat_set and std::flat_multiset container adaptors"
  },
  {
    "type": "header",
    "link": "cpp/header/forward_list",
    "name": "<forward_list>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::forward_list container"
  },
  {
    "type": "header",
    "link": "cpp/header/inplace_vector",
    "name": "<inplace_vector>",
    "marks": {
      "since": "c++26"
    },
    "description": "std::inplace_vector container"
  },
  {
    "type": "header",
    "link": "cpp/header/list",
    "name": "<list>",
    "marks": {},
    "description": "std::list container"
  },
  {
    "type": "header",
    "link": "cpp/header/map",
    "name": "<map>",
    "marks": {},
    "description": "std::map and std::multimap associative containers"
  },
  {
    "type": "header",
    "link": "cpp/header/mdspan",
    "name": "<mdspan>",
    "marks": {
      "since": "c++23"
    },
    "description": "std::mdspan view"
  },
  {
    "type": "header",
    "link": "cpp/header/queue",
    "name": "<queue>",
    "marks": {},
    "description": "std::queue and std::priority_queue container adaptors"
  },
  {
    "type": "header",
    "link": "cpp/header/set",
    "name": "<set>",
    "marks": {},
    "description": "std::set and std::multiset associative containers"
  },
  {
    "type": "header",
    "link": "cpp/header/span",
    "name": "<span>",
    "marks": {
      "since": "c++20"
    },
    "description": "std::span view"
  },
  {
    "type": "header",
    "link": "cpp/header/stack",
    "name": "<stack>",
    "marks": {},
    "description": "std::stack container adaptor"
  },
  {
    "type": "header",
    "link": "cpp/header/unordered_map",
    "name": "<unordered_map>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::unordered_map and std::unordered_multimap unordered associative containers"
  },
  {
    "type": "header",
    "link": "cpp/header/unordered_set",
    "name": "<unordered_set>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::unordered_set and std::unordered_multiset unordered associative containers"
  },
  {
    "type": "header",
    "link": "cpp/header/vector",
    "name": "<vector>",
    "marks": {},
    "description": "std::vector container"
  },
  {
    "type": "header",
    "link": "cpp/header/iterator",
    "name": "<iterator>",
    "marks": {},
    "description": "Range iterators"
  },
  {
    "type": "header",
    "link": "cpp/header/generator",
    "name": "<generator>",
    "marks": {
      "since": "c++23"
    },
    "description": "std::generator class template"
  },
  {
    "type": "header",
    "link": "cpp/header/ranges",
    "name": "<ranges>",
    "marks": {
      "since": "c++20"
    },
    "description": "Range access, primitives, requirements, utilities and adaptors"
  },
  {
    "type": "header",
    "link": "cpp/header/algorithm",
    "name": "<algorithm>",
    "marks": {},
    "description": "Algorithms that operate on ranges"
  },
  {
    "type": "header",
    "link": "cpp/header/execution",
    "name": "<execution>",
    "marks": {
      "since": "c++17"
    },
    "description": "Predefined execution policies for parallel versions of the algorithms"
  },
  {
    "type": "header",
    "link": "cpp/header/bit",
    "name": "<bit>",
    "marks": {
      "since": "c++20"
    },
    "description": "Bit manipulation functions"
  },
  {
    "type": "header",
    "link": "cpp/header/cfenv",
    "name": "<cfenv>",
    "marks": {
      "since": "c++11"
    },
    "description": "Floating-point environment access functions"
  },
  {
    "type": "header",
    "link": "cpp/header/cmath",
    "name": "<cmath>",
    "marks": {},
    "description": "Common mathematics functions"
  },
  {
    "type": "header",
    "link": "cpp/header/complex",
    "name": "<complex>",
    "marks": {},
    "description": "Complex number type"
  },
  {
    "type": "header",
    "link": "cpp/header/linalg",
    "name": "<linalg>",
    "marks": {
      "since": "c++26"
    },
    "description": "Basic linear algebra algorithms"
  },
  {
    "type": "header",
    "link": "cpp/header/numbers",
    "name": "<numbers>",
    "marks": {
      "since": "c++20"
    },
    "description": "Math constants"
  },
  {
    "type": "header",
    "link": "cpp/header/numeric",
    "name": "<numeric>",
    "marks": {},
    "description": "Numeric operations on values in ranges"
  },
  {
    "type": "header",
    "link": "cpp/header/random",
    "name": "<random>",
    "marks": {
      "since": "c++11"
    },
    "description": "Random number generators and distributions"
  },
  {
    "type": "header",
    "link": "cpp/header/ratio",
    "name": "<ratio>",
    "marks": {
      "since": "c++11"
    },
    "description": "Compile-time rational arithmetic"
  },
  {
    "type": "header",
    "link": "cpp/header/valarray",
    "name": "<valarray>",
    "marks": {},
    "description": "Class for representing and manipulating arrays of values"
  },
  {
    "type": "header",
    "link": "cpp/header/clocale",
    "name": "<clocale>",
    "marks": {},
    "description": "C localization utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/codecvt",
    "name": "<codecvt>",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++26"
    },
    "description": "Unicode conversion facilities"
  },
  {
    "type": "header",
    "link": "cpp/header/locale",
    "name": "<locale>",
    "marks": {},
    "description": "Localization utilities"
  },
  {
    "type": "header",
    "link": "cpp/header/text_encoding",
    "name": "<text_encoding>",
    "marks": {
      "since": "c++26"
    },
    "description": "Text encoding identifications"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdio",
    "name": "<cstdio>",
    "marks": {},
    "description": "C-style input-output functions"
  },
  {
    "type": "header",
    "link": "cpp/header/fstream",
    "name": "<fstream>",
    "marks": {},
    "description": "std::basic_fstream, std::basic_ifstream, std::basic_ofstream class templates and several typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/iomanip",
    "name": "<iomanip>",
    "marks": {},
    "description": "Helper functions to control the format of input and output"
  },
  {
    "type": "header",
    "link": "cpp/header/ios",
    "name": "<ios>",
    "marks": {},
    "description": "std::ios_base class, std::basic_ios class template and several typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/iosfwd",
    "name": "<iosfwd>",
    "marks": {},
    "description": "Forward declarations of all classes in the input/output library"
  },
  {
    "type": "header",
    "link": "cpp/header/iostream",
    "name": "<iostream>",
    "marks": {},
    "description": "Several standard stream objects"
  },
  {
    "type": "header",
    "link": "cpp/header/istream",
    "name": "<istream>",
    "marks": {},
    "description": "std::basic_istream class template and several typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/ostream",
    "name": "<ostream>",
    "marks": {},
    "description": "std::basic_ostream, std::basic_iostream class templates and several typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/print",
    "name": "<print>",
    "marks": {
      "since": "c++23"
    },
    "description": "Formatted output library including std::print"
  },
  {
    "type": "header",
    "link": "cpp/header/spanstream",
    "name": "<spanstream>",
    "marks": {
      "since": "c++23"
    },
    "description": "std::basic_spanstream, std::basic_ispanstream, std::basic_ospanstream class templates and typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/sstream",
    "name": "<sstream>",
    "marks": {},
    "description": "std::basic_stringstream, std::basic_istringstream, std::basic_ostringstream class templates and several typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/streambuf",
    "name": "<streambuf>",
    "marks": {},
    "description": "std::basic_streambuf class template"
  },
  {
    "type": "header",
    "link": "cpp/header/strstream",
    "name": "<strstream>",
    "marks": {
      "deprecated": "c++98",
      "removed": "c++26"
    },
    "description": "std::strstream, std::istrstream, std::ostrstream"
  },
  {
    "type": "header",
    "link": "cpp/header/syncstream",
    "name": "<syncstream>",
    "marks": {
      "since": "c++20"
    },
    "description": "std::basic_osyncstream, std::basic_syncbuf, and typedefs"
  },
  {
    "type": "header",
    "link": "cpp/header/filesystem",
    "name": "<filesystem>",
    "marks": {
      "since": "c++17"
    },
    "description": "std::path class and supporting functions"
  },
  {
    "type": "header",
    "link": "cpp/header/regex",
    "name": "<regex>",
    "marks": {
      "since": "c++11"
    },
    "description": "Classes, algorithms and iterators to support regular expression processing"
  },
  {
    "type": "header",
    "link": "cpp/header/atomic",
    "name": "<atomic>",
    "marks": {
      "since": "c++11"
    },
    "description": "Atomic operations library"
  },
  {
    "type": "header",
    "link": "cpp/header/barrier",
    "name": "<barrier>",
    "marks": {
      "since": "c++20"
    },
    "description": "Barriers"
  },
  {
    "type": "header",
    "link": "cpp/header/condition_variable",
    "name": "<condition_variable>",
    "marks": {
      "since": "c++11"
    },
    "description": "Thread waiting conditions"
  },
  {
    "type": "header",
    "link": "cpp/header/future",
    "name": "<future>",
    "marks": {
      "since": "c++11"
    },
    "description": "Primitives for asynchronous computations"
  },
  {
    "type": "header",
    "link": "cpp/header/hazard_pointer",
    "name": "<hazard_pointer>",
    "marks": {
      "since": "c++26"
    },
    "description": "Hazard pointers"
  },
  {
    "type": "header",
    "link": "cpp/header/latch",
    "name": "<latch>",
    "marks": {
      "since": "c++20"
    },
    "description": "Latches"
  },
  {
    "type": "header",
    "link": "cpp/header/mutex",
    "name": "<mutex>",
    "marks": {
      "since": "c++11"
    },
    "description": "Mutual exclusion primitives"
  },
  {
    "type": "header",
    "link": "cpp/header/rcu",
    "name": "<rcu>",
    "marks": {
      "since": "c++26"
    },
    "description": "Read-copy update mechanisms"
  },
  {
    "type": "header",
    "link": "cpp/header/semaphore",
    "name": "<semaphore>",
    "marks": {
      "since": "c++20"
    },
    "description": "Semaphores"
  },
  {
    "type": "header",
    "link": "cpp/header/shared_mutex",
    "name": "<shared_mutex>",
    "marks": {
      "since": "c++14"
    },
    "description": "Shared mutual exclusion primitives"
  },
  {
    "type": "header",
    "link": "cpp/header/stop_token",
    "name": "<stop_token>",
    "marks": {
      "since": "c++20"
    },
    "description": "Stop tokens for std::jthread"
  },
  {
    "type": "header",
    "link": "cpp/header/thread",
    "name": "<thread>",
    "marks": {
      "since": "c++11"
    },
    "description": "std::thread class and supporting functions"
  },
  {
    "type": "header",
    "link": "cpp/header/cassert",
    "name": "<assert.h>",
    "marks": {},
    "description": "Behaves same as <cassert>"
  },
  {
    "type": "header",
    "link": "cpp/header/cctype",
    "name": "<ctype.h>",
    "marks": {},
    "description": "Behaves as if each name from <cctype> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cerrno",
    "name": "<errno.h>",
    "marks": {},
    "description": "Behaves same as <cerrno>"
  },
  {
    "type": "header",
    "link": "cpp/header/cfenv",
    "name": "<fenv.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Behaves as if each name from <cfenv> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cfloat",
    "name": "<float.h>",
    "marks": {},
    "description": "Behaves same as <cfloat>"
  },
  {
    "type": "header",
    "link": "cpp/header/cinttypes",
    "name": "<inttypes.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Behaves as if each name from <cinttypes> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/climits",
    "name": "<limits.h>",
    "marks": {},
    "description": "Behaves same as <climits>"
  },
  {
    "type": "header",
    "link": "cpp/header/clocale",
    "name": "<locale.h>",
    "marks": {},
    "description": "Behaves as if each name from <clocale> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cmath",
    "name": "<math.h>",
    "marks": {},
    "description": "Behaves as if each name from <cmath> is placed in global namespace,except for names of mathematical special functions"
  },
  {
    "type": "header",
    "link": "cpp/header/csetjmp",
    "name": "<setjmp.h>",
    "marks": {},
    "description": "Behaves as if each name from <csetjmp> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/csignal",
    "name": "<signal.h>",
    "marks": {},
    "description": "Behaves as if each name from <csignal> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdarg",
    "name": "<stdarg.h>",
    "marks": {},
    "description": "Behaves as if each name from <cstdarg> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cstddef",
    "name": "<stddef.h>",
    "marks": {},
    "description": "Behaves as if each name from <cstddef> is placed in global namespace,except for names of std::byte and related functions"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdint",
    "name": "<stdint.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Behaves as if each name from <cstdint> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdio",
    "name": "<stdio.h>",
    "marks": {},
    "description": "Behaves as if each name from <cstdio> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdlib",
    "name": "<stdlib.h>",
    "marks": {},
    "description": "Behaves as if each name from <cstdlib> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cstring",
    "name": "<string.h>",
    "marks": {},
    "description": "Behaves as if each name from <cstring> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/ctime",
    "name": "<time.h>",
    "marks": {},
    "description": "Behaves as if each name from <ctime> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cuchar",
    "name": "<uchar.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Behaves as if each name from <cuchar> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cwchar",
    "name": "<wchar.h>",
    "marks": {},
    "description": "Behaves as if each name from <cwchar> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/cwctype",
    "name": "<wctype.h>",
    "marks": {},
    "description": "Behaves as if each name from <cwctype> is placed in global namespace"
  },
  {
    "type": "header",
    "link": "cpp/header/stdatomic.h",
    "name": "<stdatomic.h>",
    "marks": {
      "since": "c++23"
    },
    "description": "Defines _Atomic and provides corresponding components in the C standard library"
  },
  {
    "type": "header",
    "link": "cpp/header/ccomplex",
    "name": "<ccomplex>",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "Simply includes the header <complex>"
  },
  {
    "type": "header",
    "link": "cpp/header/ccomplex",
    "name": "<complex.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Simply includes the header <complex>"
  },
  {
    "type": "header",
    "link": "cpp/header/ctgmath",
    "name": "<ctgmath>",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "Simply includes the headers <complex> and <cmath>: the overloads equivalent to the contents of the C header tgmath.h are already provided by those headers"
  },
  {
    "type": "header",
    "link": "cpp/header/ctgmath",
    "name": "<tgmath.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Simply includes the headers <complex> and <cmath>"
  },
  {
    "type": "header",
    "link": "cpp/header/ciso646",
    "name": "<ciso646>",
    "marks": {
      "removed": "c++20"
    },
    "description": "Empty header. The macros that appear in iso646.h in C are keywords in C++"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdalign",
    "name": "<cstdalign>",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "Defines one compatibility macro constant"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdbool",
    "name": "<cstdbool>",
    "marks": {
      "since": "c++11",
      "deprecated": "c++17",
      "removed": "c++20"
    },
    "description": "Defines one compatibility macro constant"
  },
  {
    "type": "header",
    "link": "cpp/header/ciso646",
    "name": "<iso646.h>",
    "marks": {},
    "description": "Has no effect"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdalign",
    "name": "<stdalign.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Defines one compatibility macro constant"
  },
  {
    "type": "header",
    "link": "cpp/header/cstdbool",
    "name": "<stdbool.h>",
    "marks": {
      "since": "c++11"
    },
    "description": "Defines one compatibility macro constant"
  },
  {
    "type": "keyword",
    "name": "alignas",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/alignas",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "alignof",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/alignof",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "and",
    "marks": {},
    "link": "cpp/keyword/and",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "and_eq",
    "marks": {},
    "link": "cpp/keyword/and_eq",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "asm",
    "marks": {},
    "link": "cpp/keyword/asm",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "atomic_cancel",
    "marks": {
      "since": "tm"
    },
    "link": "cpp/keyword/atomic_cancel",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "atomic_commit",
    "marks": {
      "since": "tm"
    },
    "link": "cpp/keyword/atomic_commit",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "atomic_noexcept",
    "marks": {
      "since": "tm"
    },
    "link": "cpp/keyword/atomic_noexcept",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "auto",
    "marks": {},
    "link": "cpp/keyword/auto",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "bitand",
    "marks": {},
    "link": "cpp/keyword/bitand",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "bitor",
    "marks": {},
    "link": "cpp/keyword/bitor",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "bool",
    "marks": {},
    "link": "cpp/keyword/bool",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "break",
    "marks": {},
    "link": "cpp/keyword/break",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "case",
    "marks": {},
    "link": "cpp/keyword/case",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "catch",
    "marks": {},
    "link": "cpp/keyword/catch",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "char",
    "marks": {},
    "link": "cpp/keyword/char",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "char8_t",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/char8_t",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "char16_t",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/char16_t",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "char32_t",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/char32_t",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "class",
    "marks": {},
    "link": "cpp/keyword/class",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "compl",
    "marks": {},
    "link": "cpp/keyword/compl",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "concept",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/concept",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "const",
    "marks": {},
    "link": "cpp/keyword/const",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "consteval",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/consteval",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "constexpr",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/constexpr",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "constinit",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/constinit",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "const_cast",
    "marks": {},
    "link": "cpp/keyword/const_cast",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "continue",
    "marks": {},
    "link": "cpp/keyword/continue",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "co_await",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/co_await",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "co_return",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/co_return",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "co_yield",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/co_yield",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "decltype",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/decltype",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "default",
    "marks": {},
    "link": "cpp/keyword/default",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "delete",
    "marks": {},
    "link": "cpp/keyword/delete",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "do",
    "marks": {},
    "link": "cpp/keyword/do",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "double",
    "marks": {},
    "link": "cpp/keyword/double",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "dynamic_cast",
    "marks": {},
    "link": "cpp/keyword/dynamic_cast",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "else",
    "marks": {},
    "link": "cpp/keyword/else",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "enum",
    "marks": {},
    "link": "cpp/keyword/enum",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "explicit",
    "marks": {},
    "link": "cpp/keyword/explicit",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "export",
    "marks": {},
    "link": "cpp/keyword/export",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "extern",
    "marks": {},
    "link": "cpp/keyword/extern",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "false",
    "marks": {},
    "link": "cpp/keyword/false",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "float",
    "marks": {},
    "link": "cpp/keyword/float",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "for",
    "marks": {},
    "link": "cpp/keyword/for",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "friend",
    "marks": {},
    "link": "cpp/keyword/friend",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "goto",
    "marks": {},
    "link": "cpp/keyword/goto",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "if",
    "marks": {},
    "link": "cpp/keyword/if",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "inline",
    "marks": {},
    "link": "cpp/keyword/inline",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "int",
    "marks": {},
    "link": "cpp/keyword/int",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "long",
    "marks": {},
    "link": "cpp/keyword/long",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "mutable",
    "marks": {},
    "link": "cpp/keyword/mutable",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "namespace",
    "marks": {},
    "link": "cpp/keyword/namespace",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "new",
    "marks": {},
    "link": "cpp/keyword/new",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "noexcept",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/noexcept",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "not",
    "marks": {},
    "link": "cpp/keyword/not",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "not_eq",
    "marks": {},
    "link": "cpp/keyword/not_eq",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "nullptr",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/nullptr",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "operator",
    "marks": {},
    "link": "cpp/keyword/operator",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "or",
    "marks": {},
    "link": "cpp/keyword/or",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "or_eq",
    "marks": {},
    "link": "cpp/keyword/or_eq",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "private",
    "marks": {},
    "link": "cpp/keyword/private",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "protected",
    "marks": {},
    "link": "cpp/keyword/protected",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "public",
    "marks": {},
    "link": "cpp/keyword/public",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "reflexpr",
    "marks": {
      "since": "reflection"
    },
    "link": "cpp/keyword/reflexpr",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "register",
    "marks": {},
    "link": "cpp/keyword/register",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "reinterpret_cast",
    "marks": {},
    "link": "cpp/keyword/reinterpret_cast",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "requires",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/requires",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "return",
    "marks": {},
    "link": "cpp/keyword/return",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "short",
    "marks": {},
    "link": "cpp/keyword/short",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "signed",
    "marks": {},
    "link": "cpp/keyword/signed",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "sizeof",
    "marks": {},
    "link": "cpp/keyword/sizeof",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "static",
    "marks": {},
    "link": "cpp/keyword/static",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "static_assert",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/static_assert",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "static_cast",
    "marks": {},
    "link": "cpp/keyword/static_cast",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "struct",
    "marks": {},
    "link": "cpp/keyword/struct",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "switch",
    "marks": {},
    "link": "cpp/keyword/switch",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "synchronized",
    "marks": {
      "since": "tm"
    },
    "link": "cpp/keyword/synchronized",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "template",
    "marks": {},
    "link": "cpp/keyword/template",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "this",
    "marks": {},
    "link": "cpp/keyword/this",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "thread_local",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/keyword/thread_local",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "throw",
    "marks": {},
    "link": "cpp/keyword/throw",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "true",
    "marks": {},
    "link": "cpp/keyword/true",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "try",
    "marks": {},
    "link": "cpp/keyword/try",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "typedef",
    "marks": {},
    "link": "cpp/keyword/typedef",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "typeid",
    "marks": {},
    "link": "cpp/keyword/typeid",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "typename",
    "marks": {},
    "link": "cpp/keyword/typename",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "union",
    "marks": {},
    "link": "cpp/keyword/union",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "unsigned",
    "marks": {},
    "link": "cpp/keyword/unsigned",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "using",
    "marks": {},
    "link": "cpp/keyword/using",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "virtual",
    "marks": {},
    "link": "cpp/keyword/virtual",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "void",
    "marks": {},
    "link": "cpp/keyword/void",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "volatile",
    "marks": {},
    "link": "cpp/keyword/volatile",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "wchar_t",
    "marks": {},
    "link": "cpp/keyword/wchar_t",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "while",
    "marks": {},
    "link": "cpp/keyword/while",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "xor",
    "marks": {},
    "link": "cpp/keyword/xor",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "xor_eq",
    "marks": {},
    "link": "cpp/keyword/xor_eq",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "final",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/language/final",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "override",
    "marks": {
      "since": "c++11"
    },
    "link": "cpp/language/override",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "transaction_safe",
    "marks": {
      "since": "tm"
    },
    "link": "cpp/language/transactional_memory",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "transaction_safe_dynamic",
    "marks": {
      "since": "tm"
    },
    "link": "cpp/language/transactional_memory",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "import",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/import",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "keyword",
    "name": "module",
    "marks": {
      "since": "c++20"
    },
    "link": "cpp/keyword/module",
    "canBeUsedAsIdentifier": false
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[noreturn]]",
    "link": "cpp/language/attributes/noreturn",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[carries_dependency]]",
    "link": "cpp/language/attributes/carries_dependency",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[deprecated]]",
    "link": "cpp/language/attributes/deprecated",
    "marks": {
      "since": "c++14"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[fallthrough]]",
    "link": "cpp/language/attributes/fallthrough",
    "marks": {
      "since": "c++17"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[nodiscard]]",
    "link": "cpp/language/attributes/nodiscard",
    "marks": {
      "since": "c++17"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[maybe_unused]]",
    "link": "cpp/language/attributes/maybe_unused",
    "marks": {
      "since": "c++17"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[likely]]",
    "link": "cpp/language/attributes/likely",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[unlikely]]",
    "link": "cpp/language/attributes/likely",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[no_unique_address]]",
    "link": "cpp/language/attributes/no_unique_address",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[assume]]",
    "link": "cpp/language/attributes/assume",
    "marks": {
      "since": "c++23"
    }
  },
  {
    "type": "attribute",
    "namespace": "",
    "name": "[[optimize_for_synchronized]]",
    "link": "cpp/language/attributes/optimize_for_synchronized",
    "marks": {
      "since": "tm"
    }
  },
  {
    "type": "preprocessorToken",
    "name": "#define",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/replace",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#elif",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#elifdef",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {
      "since": "c++23"
    }
  },
  {
    "type": "preprocessorToken",
    "name": "#elifndef",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {
      "since": "c++23"
    }
  },
  {
    "type": "preprocessorToken",
    "name": "#else",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#endif",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#error",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/error",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#if",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#ifdef",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#ifndef",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/conditional",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#include",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/include",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#line",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/line",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#pragma",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/impl",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#undef",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/replace",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "#warning",
    "tokenType": "directiveName",
    "link": "cpp/preprocessor/error",
    "marks": {
      "since": "c++23"
    }
  },
  {
    "type": "preprocessorToken",
    "name": "__has_cpp_attribute",
    "tokenType": "operator",
    "link": "cpp/feature_test",
    "marks": {
      "since": "c++20"
    }
  },
  {
    "type": "preprocessorToken",
    "name": "__has_include",
    "tokenType": "operator",
    "link": "cpp/preprocessor/include",
    "marks": {
      "since": "c++17"
    }
  },
  {
    "type": "preprocessorToken",
    "name": "__VA_ARGS__",
    "tokenType": "replacement",
    "link": "cpp/preprocessor/replace",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "__VA_OPT__",
    "tokenType": "replacement",
    "link": "cpp/preprocessor/replace",
    "marks": {}
  },
  {
    "type": "preprocessorToken",
    "name": "_Pragma",
    "tokenType": "operatorOutsideDirective",
    "link": "cpp/preprocessor/impl",
    "marks": {
      "since": "c++11"
    }
  },
  {
    "type": "preprocessorToken",
    "name": "defined",
    "tokenType": "operator",
    "link": "cpp/preprocessor/conditional",
    "marks": {}
  }
]