]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/basic/extract-word.h
license: LGPL-2.1+ -> LGPL-2.1-or-later
[thirdparty/systemd.git] / src / basic / extract-word.h
CommitLineData
db9ecf05 1/* SPDX-License-Identifier: LGPL-2.1-or-later */
84ac7bea
LP
2#pragma once
3
84ac7bea
LP
4#include "macro.h"
5
6typedef enum ExtractFlags {
be0b7a1a
LP
7 EXTRACT_RELAX = 1 << 0,
8 EXTRACT_CUNESCAPE = 1 << 1,
9 EXTRACT_CUNESCAPE_RELAX = 1 << 2,
1e198efc
ZJS
10 EXTRACT_UNESCAPE_SEPARATORS = 1 << 3,
11 EXTRACT_UNQUOTE = 1 << 4,
12 EXTRACT_DONT_COALESCE_SEPARATORS = 1 << 5,
13 EXTRACT_RETAIN_ESCAPE = 1 << 6,
84ac7bea
LP
14} ExtractFlags;
15
16int extract_first_word(const char **p, char **ret, const char *separators, ExtractFlags flags);
17int extract_first_word_and_warn(const char **p, char **ret, const char *separators, ExtractFlags flags, const char *unit, const char *filename, unsigned line, const char *rvalue);
e4d85dbb 18int extract_many_words(const char **p, const char *separators, unsigned flags, ...) _sentinel_;