nds2-client - ClientUser  0.16.8
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
bash_pattern.h
1 /*
2  * Copyright (C) 2012 Leo Singer <leo.singer@ligo.org>
3  *
4  * This file is part of bash_pattern.
5  *
6  * bash_pattern is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * bash_pattern is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with bash_pattern. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 
21 #ifndef BASH_PATTERN_H
22 #define BASH_PATTERN_H
23 
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 #if 0
29 } /* so that editor will match brace */
30 #endif
31 
32 
33 #ifndef DLL_EXPORT
34 #if WIN32 || WIN64
35 #define DLL_EXPORT __declspec(dllexport)
36 #else
37 #define DLL_EXPORT
38 #endif /* WIN32 || WIN64 */
39 #endif /* DLL_EXPORT */
40 
41 struct bash_pattern_t;
42 typedef struct bash_pattern_t bash_pattern;
43 
44 
49 DLL_EXPORT
50 bash_pattern *bash_pattern_compile(const char *);
51 
55 DLL_EXPORT
56 void bash_pattern_free(bash_pattern *);
57 
61 DLL_EXPORT
62 int bash_pattern_matches(const bash_pattern *, const char *);
63 
69 DLL_EXPORT
70 int bash_pattern_is_flat(const bash_pattern *);
71 
72 
73 #if 0
74 { /* so that editor will match brace */
75 #endif
76 #ifdef __cplusplus
77 } /* extern "C" */
78 #endif
79 
80 
81 #endif