52#ifndef LLVM_SUPPORT_SPECIALCASELIST_H
53#define LLVM_SUPPORT_SPECIALCASELIST_H
74 static std::unique_ptr<SpecialCaseList>
83 static std::unique_ptr<SpecialCaseList>
124 bool insert(std::string Regexp,
unsigned LineNumber, std::string &REError);
132 std::vector<std::pair<std::unique_ptr<Regex>,
unsigned>> RegExes;
This file defines the StringMap class.
Lightweight error class with error context and mandatory checking.
This interface provides simple read-only access to a block of memory, and provides simple methods for...
Represents a set of regular expressions.
bool insert(std::string Regexp, unsigned LineNumber, std::string &REError)
unsigned match(StringRef Query) const
SpecialCaseList & operator=(SpecialCaseList const &)=delete
SpecialCaseList(SpecialCaseList const &)=delete
std::vector< Section > Sections
bool createInternal(const std::vector< std::string > &Paths, vfs::FileSystem &VFS, std::string &Error)
static std::unique_ptr< SpecialCaseList > createOrDie(const std::vector< std::string > &Paths, llvm::vfs::FileSystem &FS)
Parses the special case list entries from files.
static std::unique_ptr< SpecialCaseList > create(const std::vector< std::string > &Paths, llvm::vfs::FileSystem &FS, std::string &Error)
Parses the special case list entries from files.
SpecialCaseList()=default
unsigned inSectionBlame(StringRef Section, StringRef Prefix, StringRef Query, StringRef Category=StringRef()) const
Returns the line number corresponding to the special case list entry if the special case list contain...
bool inSection(StringRef Section, StringRef Prefix, StringRef Query, StringRef Category=StringRef()) const
Returns true, if special case list contains a line.
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
StringRef - Represent a constant reference to a string, i.e.
The virtual file system interface.
This is an optimization pass for GlobalISel generic memory operations.
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Section(std::unique_ptr< Matcher > M)
std::unique_ptr< Matcher > SectionMatcher