Lines Matching refs:pattern

148 isValidPattern(char* pattern)
150 while (*pattern) {
151 switch (*pattern++) {
153 // the escape character must not be at the end of the pattern
154 if (!*pattern++)
159 if (pattern[0] == ']' || !pattern[0])
162 while (*pattern != ']') {
163 if (*pattern == '\\' && !*++pattern)
166 if (!*pattern)
169 if (pattern[0] == '-' && pattern[1] == '-')
172 pattern++;
181 /*! Matches the string against the given wildcard pattern.
186 matchString(char* pattern, char* string)
188 while (*pattern) {
189 // end of string == valid end of pattern?
191 while (pattern[0] == '*')
192 pattern++;
193 return !pattern[0] ? MATCH_OK : NO_MATCH;
196 switch (*pattern++) {
207 // compact pattern
209 if (pattern[0] == '?') {
212 } else if (pattern[0] != '*')
215 pattern++;
218 // if the pattern is done, we have matched the string
219 if (!pattern[0])
224 if (pattern[0] == string[0]
225 || pattern[0] == '['
226 || pattern[0] == '\\') {
227 status_t status = matchString(pattern, string);
245 if (pattern[0] == '^' || pattern[0] == '!') {
247 pattern++;
250 if (!pattern[0] || pattern[0] == ']')
256 while (pattern[0] != ']') {
257 if (!pattern[0])
260 if (pattern[0] == '\\')
261 pattern++;
263 uint32 first = utf8ToUnicode(&pattern);
269 } else if (pattern[0] == '-' && pattern[1] != ']'
270 && pattern[1]) {
271 pattern++;
273 if (pattern[0] == '\\') {
274 pattern++;
275 if (!pattern[0])
278 uint32 last = utf8ToUnicode(&pattern);
291 while (pattern[0] != ']') {
292 if (!pattern[0])
294 pattern++;
296 pattern++;
303 if (!pattern[0])
307 if (pattern[-1] != string[0])