1 /* -*- C -*-
2 *
3 * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
4 * University Research and Technology
5 * Corporation. All rights reserved.
6 * Copyright (c) 2004-2006 The University of Tennessee and The University
7 * of Tennessee Research Foundation. All rights
8 * reserved.
9 * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
10 * University of Stuttgart. All rights reserved.
11 * Copyright (c) 2004-2005 The Regents of the University of California.
12 * All rights reserved.
13 * Copyright (c) 2007-2011 Cisco Systems, Inc. All rights reserved.
14 * Copyright (c) 2012-2013 Los Alamos National Security, Inc. All rights reserved.
15 * Copyright (c) 2014-2017 Intel, Inc. All rights reserved.
16 * Copyright (c) 2019 IBM Corporation. All rights reserved.
17 * $COPYRIGHT$
18 *
19 * Additional copyrights may follow
20 *
21 * $HEADER$
22 */
23 /**
24 * @file
25 *
26 * Buffer management types.
27 */
28
29 #ifndef PMIX_MCA_PREG_TYPES_H_
30 #define PMIX_MCA_PREG_TYPES_H_
31
32 #include <src/include/pmix_config.h>
33
34
35 #include "src/class/pmix_object.h"
36 #include "src/class/pmix_list.h"
37
38 BEGIN_C_DECLS
39
40 /* these classes are required by the regex code */
41 typedef struct {
42 pmix_list_item_t super;
43 int start;
44 int cnt;
45 } pmix_regex_range_t;
46 PMIX_EXPORT PMIX_CLASS_DECLARATION(pmix_regex_range_t);
47
48 typedef struct {
49 /* list object */
50 pmix_list_item_t super;
51 char *prefix;
52 char *suffix;
53 int num_digits;
54 pmix_list_t ranges;
55 bool skip;
56 } pmix_regex_value_t;
57 PMIX_EXPORT PMIX_CLASS_DECLARATION(pmix_regex_value_t);
58
59 END_C_DECLS
60
61 #endif /* PMIX_PREG_TYPES_H */