VLink 2.0.0
A high-performance communication middleware
载入中...
搜索中...
未找到
version.h 文件参考

VLink library version constants, build-time feature flags, and version comparison macros. 更多...

此图展示该文件被哪些文件直接或间接地引用了:

浏览该文件的源代码.

宏定义

#define VLINK_VERSION_MAJOR   2
#define VLINK_VERSION_MINOR   0
#define VLINK_VERSION_PATCH   0
#define VLINK_VERSION   "2.0.0"
#define VLINK_VERSION_TIMESTAMP   ""
#define VLINK_VERSION_TAG   ""
#define VLINK_VERSION_COMMIT_ID   ""
#define VLINK_ENABLE_C_API
#define VLINK_ENABLE_SECURITY
#define VLINK_ENABLE_SQLITE
#define VLINK_ENABLE_CLI_INFO
#define VLINK_ENABLE_CLI_BAG
#define VLINK_ENABLE_CLI_EPROTO
#define VLINK_ENABLE_CLI_EFBS
#define VLINK_ENABLE_CLI_LIST
#define VLINK_ENABLE_CLI_MONITOR
#define VLINK_ENABLE_CLI_DUMP
#define VLINK_ENABLE_CLI_CHECK
#define VLINK_ENABLE_LOG_NAT
#define VLINK_ENABLE_PROXY
#define VLINK_ENABLE_TEST
#define VLINK_VERSION_CHECK(major, minor, patch)
 Encodes a version triple into a single 24-bit integer for comparison.
#define VLINK_VERSION_VALUE   VLINK_VERSION_CHECK(VLINK_VERSION_MAJOR, VLINK_VERSION_MINOR, VLINK_VERSION_PATCH)
 The packed 24-bit integer value for the current VLink library version.

详细描述

VLink library version constants, build-time feature flags, and version comparison macros.

This header exposes the VLink library version as three numeric constants (VLINK_VERSION_MAJOR, VLINK_VERSION_MINOR, VLINK_VERSION_PATCH) and as a dot-separated string (VLINK_VERSION). It also defines compile-time feature flags that control which optional subsystems are compiled into the library.

When the CMake-generated version_config.h is present it takes precedence; the fallback definitions below are used in header-only or out-of-tree builds.

Version Comparison
Use VLINK_VERSION_CHECK together with VLINK_VERSION_VALUE to guard version-dependent code at compile time:
#if VLINK_VERSION_VALUE >= VLINK_VERSION_CHECK(2, 0, 0)
// safe to use VLink 2.0.0 APIs
#endif

宏定义说明

◆ VLINK_ENABLE_C_API

#define VLINK_ENABLE_C_API

◆ VLINK_ENABLE_CLI_BAG

#define VLINK_ENABLE_CLI_BAG

◆ VLINK_ENABLE_CLI_CHECK

#define VLINK_ENABLE_CLI_CHECK

◆ VLINK_ENABLE_CLI_DUMP

#define VLINK_ENABLE_CLI_DUMP

◆ VLINK_ENABLE_CLI_EFBS

#define VLINK_ENABLE_CLI_EFBS

◆ VLINK_ENABLE_CLI_EPROTO

#define VLINK_ENABLE_CLI_EPROTO

◆ VLINK_ENABLE_CLI_INFO

#define VLINK_ENABLE_CLI_INFO

◆ VLINK_ENABLE_CLI_LIST

#define VLINK_ENABLE_CLI_LIST

◆ VLINK_ENABLE_CLI_MONITOR

#define VLINK_ENABLE_CLI_MONITOR

◆ VLINK_ENABLE_LOG_NAT

#define VLINK_ENABLE_LOG_NAT

◆ VLINK_ENABLE_PROXY

#define VLINK_ENABLE_PROXY

◆ VLINK_ENABLE_SECURITY

#define VLINK_ENABLE_SECURITY

◆ VLINK_ENABLE_SQLITE

#define VLINK_ENABLE_SQLITE

◆ VLINK_ENABLE_TEST

#define VLINK_ENABLE_TEST

◆ VLINK_VERSION

#define VLINK_VERSION   "2.0.0"

◆ VLINK_VERSION_CHECK

#define VLINK_VERSION_CHECK ( major,
minor,
patch )
值:
(((major) << 16) | ((minor) << 8) | (patch))

Encodes a version triple into a single 24-bit integer for comparison.

Packs major into bits 23-16, minor into bits 15-8, and patch into bits 7-0. Use this macro together with VLINK_VERSION_VALUE to perform compile-time version checks.

参数
majorMajor version component (0-255).
minorMinor version component (0-255).
patchPatch version component (0-255).
返回
Encoded 24-bit integer representation of the version triple.

◆ VLINK_VERSION_COMMIT_ID

#define VLINK_VERSION_COMMIT_ID   ""

◆ VLINK_VERSION_MAJOR

#define VLINK_VERSION_MAJOR   2

◆ VLINK_VERSION_MINOR

#define VLINK_VERSION_MINOR   0

◆ VLINK_VERSION_PATCH

#define VLINK_VERSION_PATCH   0

◆ VLINK_VERSION_TAG

#define VLINK_VERSION_TAG   ""

◆ VLINK_VERSION_TIMESTAMP

#define VLINK_VERSION_TIMESTAMP   ""

◆ VLINK_VERSION_VALUE

The packed 24-bit integer value for the current VLink library version.

Equivalent to VLINK_VERSION_CHECK(VLINK_VERSION_MAJOR, VLINK_VERSION_MINOR, VLINK_VERSION_PATCH). Compare this against VLINK_VERSION_CHECK(x, y, z) to conditionally enable code paths that depend on a minimum library version.