LLVM  10.0.0svn
BinaryStreamError.h
Go to the documentation of this file.
1 //===- BinaryStreamError.h - Error extensions for Binary Streams *- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_SUPPORT_BINARYSTREAMERROR_H
10 #define LLVM_SUPPORT_BINARYSTREAMERROR_H
11 
12 #include "llvm/ADT/StringRef.h"
13 #include "llvm/Support/Error.h"
14 
15 #include <string>
16 
17 namespace llvm {
18 enum class stream_error_code {
24 };
25 
26 /// Base class for errors originating when parsing raw PDB files
27 class BinaryStreamError : public ErrorInfo<BinaryStreamError> {
28 public:
29  static char ID;
33 
34  void log(raw_ostream &OS) const override;
35  std::error_code convertToErrorCode() const override;
36 
37  StringRef getErrorMessage() const;
38 
39  stream_error_code getErrorCode() const { return Code; }
40 
41 private:
42  std::string ErrMsg;
43  stream_error_code Code;
44 };
45 } // namespace llvm
46 
47 #endif // LLVM_SUPPORT_BINARYSTREAMERROR_H
uint64_t CallInst * C
LLVMContext & Context
This class represents lattice values for constants.
Definition: AllocatorList.h:23
Base class for user error types.
Definition: Error.h:344
Base class for errors originating when parsing raw PDB files.
This class implements an extremely fast bulk output stream that can only output to a stream...
Definition: raw_ostream.h:45
stream_error_code getErrorCode() const
StringRef - Represent a constant reference to a string, i.e.
Definition: StringRef.h:48