(library: str)
| 119 | |
| 120 | |
| 121 | def 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 | |
| 142 | ALL_VERSIONS = [ |
no test coverage detected