APIとABIのバージョン管理
PY_VERSION_HEX
は、単一の整数でエンコードされたPythonバージョン番号です。
たとえば、PY_VERSION_HEX
が0x030401a2
に設定されている場合、基になるバージョン情報は、次のように32ビット数として扱うことで見つけることができます。
バイト ビット(ビッグエンディアン順) 意味 1
1-8
PY_MAJOR_VERSION
(3.4.1a2
の3
)2
9-16
PY_MINOR_VERSION
(3.4.1a2
の4
)3
17-24
PY_MICRO_VERSION
(3.4.1a2
の1
)4
25-28
PY_RELEASE_LEVEL
(アルファの場合は0xA
、ベータの場合は0xB
、リリース候補の場合は0xC
、ファイナルの場合は0xF
)、この場合はアルファ。29-32
PY_RELEASE_SERIAL
(3.4.1a2
の2
、最終リリースではゼロ)
したがって、3.4.1a2
はhexversion 0x030401a2
です。
指定されたすべてのマクロは、:source: `Include / patchlevel.h` で定義されています。