1 /* set-fields.h -- parse field list argument
3 Copyright (C) 2015-2017 Free Software Foundation, Inc.
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
20 struct field_range_pair
26 /* Array of `struct range_pair' holding all the finite ranges. */
27 extern struct field_range_pair
*frp
;
29 /* Number of finite ranges specified by the user. */
32 /* field list parsing options */
35 SETFLD_ALLOW_DASH
= 0x01, /* allow single dash meaning 'all fields' */
36 SETFLD_COMPLEMENT
= 0x02, /* complement the field list */
37 SETFLD_ERRMSG_USE_POS
= 0x04 /* when reporting errors, say 'position' instead
38 of 'field' (used with cut -b/-c) */
41 /* allocates and initializes the FRP array and N_FRP count */
42 extern void set_fields (const char *fieldstr
, unsigned int options
);
44 /* frees memory allocated by set_fields() */
45 extern void reset_fields (void);