Lines Matching refs:pattern
1896 // For example, pattern="std::map*" and language="C++".
1902 : pattern(a_pattern), language(a_language), exact_match(a_exact_match),
1906 std::string pattern;
1908 // If false, we use glob() to match pattern. If true, we use strcmp().
2072 // looking at a single pattern, it first applies any language specific
2073 // demangling as specified for the pattern, and then matches the
2074 // resulting symbol name to the pattern. If it finds an exact match
2075 // for a literal pattern (a pattern enclosed in quotes or with no
2077 // finds a match with a wildcard pattern, then it saves it and
2081 // If no exact match with a literal pattern is ever found, then if a
2082 // wildcard match with a global pattern was found it is used,
2083 // otherwise if a wildcard match with a local pattern was found it is
2091 // * Otherwise, if there is any match with a global wildcard pattern:
2092 // + If there is any match with a wildcard pattern which is not
2093 // "*", then we use the tag in which the *last* such pattern
2096 // wildcard pattern which is not "*", then we use the *last*
2098 // * Otherwise, if there is any match with a local wildcard pattern:
2099 // + If there is any match with a wildcard pattern which is not
2100 // "*", then we use the tag in which the *last* such pattern
2109 // version. If there is no match with a global pattern, but there is
2110 // a match with a local pattern, then the GNU linker marks the symbol
2131 // * Otherwise, we use the "*" pattern if there is one. We give an
2153 // If a pattern has backlashes but no unquoted wildcard characters,
2155 // Otherwise we treat it as a wildcard pattern. This function returns
2156 // true for a wildcard pattern. Otherwise, it does backslash
2157 // unquoting on *PATTERN and returns false. If this returns true,
2158 // *PATTERN may have been partially unquoted.
2161 Version_script_info::unquote(std::string* pattern) const
2164 size_t len = pattern->length();
2172 switch ((*pattern)[i])
2185 (*pattern)[j] = (*pattern)[i];
2245 if (exp.pattern.length() == 1 && exp.pattern[0] == '*')
2262 std::string pattern = exp.pattern;
2265 if (this->unquote(&pattern))
2274 this->add_exact_match(pattern, v, is_global, &exp,
2376 if (fnmatch(p->expression->pattern.c_str(), name_to_match,
2429 std::string pattern = expression.pattern;
2432 if (this->unquote(&pattern))
2436 if (symtab->lookup(pattern.c_str(), vt->tag.c_str()) == NULL)
2439 vt->tag.c_str(), pattern.c_str());
2549 fprintf(f, "%s", ve.pattern.c_str());
2971 // Add a pattern expression to an existing list of expressions, if any.
2976 const char* pattern, int patlen, int exact_match)
2982 Version_expression(std::string(pattern, patlen),