//===- ErrorCollector.h -----------------------------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===-----------------------------------------------------------------------===/ /// /// This class collects errors that should be reported or ignored in aggregate. /// /// Like llvm::Error, an ErrorCollector cannot be copied. Unlike llvm::Error, /// an ErrorCollector may be destroyed if it was originally constructed to treat /// errors as non-fatal. In this case, all Errors are consumed upon destruction. /// An ErrorCollector may be initially constructed (or escalated) such that /// errors are treated as fatal. This causes a crash if an attempt is made to /// delete the ErrorCollector when some Errors have not been retrieved via /// makeError(). /// //===-----------------------------------------------------------------------===/ #ifndef LLVM_TOOLS_LLVM_IFS_ERRORCOLLECTOR_H #define LLVM_TOOLS_LLVM_IFS_ERRORCOLLECTOR_H #include "llvm/Support/Error.h" #include "llvm/Support/raw_ostream.h" #include <vector> namespace llvm { namespace ifs { class ErrorCollector { … }; } // end namespace ifs } // end namespace llvm #endif // LLVM_TOOLS_LLVM_IFS_ERRORCOLLECTOR_H