/* SPDX-License-Identifier: LGPL-2.1 */ /* * Copyright (C) 2010 Red Hat Inc, Steven Rostedt <srostedt@redhat.com> * */ #ifndef __UTIL_H #define __UTIL_H #include <ctype.h> /* Can be overridden */ void warning(const char *fmt, ...); void pr_stat(const char *fmt, ...); void vpr_stat(const char *fmt, va_list ap); /* Always available */ void __warning(const char *fmt, ...); void __pr_stat(const char *fmt, ...); void __vwarning(const char *fmt, ...); void __vpr_stat(const char *fmt, ...); #define min(x, y) ({ \ typeof(x) _min1 = (x); \ typeof(y) _min2 = (y); \ (void) (&_min1 == &_min2); \ _min1 < _min2 ? _min1 : _min2; }) static inline char *strim(char *string) { char *ret; if (!string) return NULL; while (*string) { if (!isspace(*string)) break; string++; } ret = string; string = ret + strlen(ret) - 1; while (string > ret) { if (!isspace(*string)) break; string--; } string[1] = 0; return ret; } static inline int has_text(const char *text) { if (!text) return 0; while (*text) { if (!isspace(*text)) return 1; text++; } return 0; } #endif