/* Mark a symbol as deprecated when libbpf version is >= {major}.{minor} */ #define LIBBPF_DEPRECATED_SINCE(major, minor, msg) \
__LIBBPF_MARK_DEPRECATED_ ## major ## _ ## minor \
(LIBBPF_DEPRECATED("libbpf v"# major "."# minor "+: " msg))
/* Add checks for other versions below when planning deprecation of API symbols *withtheLIBBPF_DEPRECATED_SINCEmacro.
*/ #if __LIBBPF_CURRENT_VERSION_GEQ(1, 0) #define __LIBBPF_MARK_DEPRECATED_1_0(X) X #else #define __LIBBPF_MARK_DEPRECATED_1_0(X) #endif
/* This set of internal macros allows to do "function overloading" based on *numberofargumentsprovidedbyusedinbackwards-compatiblewayduringthe *transitiontolibbpf1.0 *It'suglybutnecessaryevilthatwillbecleanedupwhenwegetto1.0. *Seebpf_prog_load()overloadforexample.
*/ #define ___libbpf_cat(A, B) A ## B #define ___libbpf_select(NAME, NUM) ___libbpf_cat(NAME, NUM) #define ___libbpf_nth(_1, _2, _3, _4, _5, _6, N, ...) N #define ___libbpf_cnt(...) ___libbpf_nth(__VA_ARGS__, 6, 5, 4, 3, 2, 1) #define ___libbpf_overload(NAME, ...) ___libbpf_select(NAME, ___libbpf_cnt(__VA_ARGS__))(__VA_ARGS__)
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.