MCPcopy Create free account
hub / github.com/apache/arrow / generate_availability_macros

Function generate_availability_macros

c_glib/tool/generate-version-header.py:121–139  ·  view source on GitHub ↗
(library: str)

Source from the content-addressed store, hash-verified

119
120
121def generate_availability_macros(library: str) -> str:
122 macros = [f"""#define {library}_AVAILABLE_IN_ALL {library}_EXTERN"""]
123
124 for major_version, minor_version in ALL_VERSIONS:
125 macros.append(f"""#if {library}_VERSION_MIN_REQUIRED >= {library}_VERSION_{major_version}_{minor_version}
126# define {library}_DEPRECATED_IN_{major_version}_{minor_version} {library}_DEPRECATED
127# define {library}_DEPRECATED_IN_{major_version}_{minor_version}_FOR(function) {library}_DEPRECATED_FOR(function)
128#else
129# define {library}_DEPRECATED_IN_{major_version}_{minor_version}
130# define {library}_DEPRECATED_IN_{major_version}_{minor_version}_FOR(function)
131#endif
132
133#if {library}_VERSION_MAX_ALLOWED < {library}_VERSION_{major_version}_{minor_version}
134# define {library}_AVAILABLE_IN_{major_version}_{minor_version} {library}_EXTERN {library}_UNAVAILABLE({major_version}, {minor_version})
135#else
136# define {library}_AVAILABLE_IN_{major_version}_{minor_version} {library}_EXTERN
137#endif""") # noqa: E501
138
139 return "\n\n".join(macros)
140
141
142ALL_VERSIONS = [

Callers 1

write_headerFunction · 0.85

Calls 2

appendMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected