14#ifndef LLVM_CLANG_ASTMATCHERS_DYNAMIC_DIAGNOSTICS_H
15#define LLVM_CLANG_ASTMATCHERS_DYNAMIC_DIAGNOSTICS_H
19#include "llvm/ADT/ArrayRef.h"
20#include "llvm/ADT/StringRef.h"
21#include "llvm/ADT/Twine.h"
22#include "llvm/Support/raw_ostream.h"
27namespace ast_matchers {
90 ArgStream(std::vector<std::string> *Out) : Out(Out) {}
97 std::vector<std::string> *Out;
181 std::vector<ContextFrame> ContextStack;
182 std::vector<ErrorContent> Errors;
Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified.
The base class of the type hierarchy.
ArgStream(std::vector< std::string > *Out)
ArgStream & operator<<(const T &Arg)
Helper class to manage error messages.
void printToStream(llvm::raw_ostream &OS) const
Returns a simple string representation of each error.
ContextType
Parser context types.
ArgStream addError(SourceRange Range, ErrorType Error)
Add an error to the diagnostics.
ErrorType
All errors from the system.
@ ET_RegistryWrongArgType
@ ET_ParserOverloadedType
@ ET_ParserMalformedBindExpr
@ ET_RegistryValueNotFound
@ ET_ParserFailedToBuildMatcher
@ ET_RegistryMatcherNotFound
@ ET_RegistryUnknownEnumWithReplace
@ ET_RegistryNonNodeMatcher
@ ET_ParserMalformedChainedExpr
@ ET_RegistryWrongArgCount
@ ET_RegistryAmbiguousOverload
@ ET_RegistryMatcherNoWithSupport
void printToStreamFull(llvm::raw_ostream &OS) const
Returns the full string representation of each error.
std::string toStringFull() const
std::string toString() const
ArrayRef< ErrorContent > errors() const
The JSON file list parser is used to communicate input to InstallAPI.
const FunctionProtoType * T
Information stored for one frame of the context.
std::vector< std::string > Args
Class defining a parser context.
MatcherArgEnum
About to recurse into parsing one argument for a matcher.
ConstructMatcherEnum
About to call the constructor for a matcher.
std::vector< std::string > Args
Information stored for each error found.
std::vector< ContextFrame > ContextStack
std::vector< Message > Messages
Context for overloaded matcher construction.
void revertErrors()
Revert all errors that happened within this context.
A VariantValue instance annotated with its parser context.