#include "CppInterOp/CppInterOpTypes.h"
#include "CppInterOp/Error.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/raw_ostream.h"
#include <atomic>
#include <cstdint>
#include <deque>
#include <string>
#include <system_error>
#include <utility>
Go to the source code of this file.
|
| ErrorSlice * | Cpp::AllocSlice (InterpreterInfo *Owner) |
| | Allocate a fresh slice on the heap, refcount 0.
|
| |
| ErrorRef | Cpp::makeError (Status S) |
| | Build an inline-status ErrorRef (no diagnostics, no payload).
|
| |
| ErrorRef | Cpp::makeError (InterpreterInfo *II, Status S, std::string Message, const char *Producer, const char *ProducerSig) |
| | Build a slice-encoded error carrying a Clang-derived message + the interp's pending diagnostics + producer attribution.
|
| |
| ErrorRef | Cpp::drainError (InterpreterInfo *II, llvm::Error E, const char *Producer, const char *ProducerSig) |
| | Drain E into a fresh slice, returning the slice via ErrorRef.
|
| |
| template<typename T > |
| Result< T > | Cpp::makeResult (InterpreterInfo *II, llvm::Expected< T > E, const char *Producer, const char *ProducerSig) |
| | Convert llvm::Expected<T> into Result<T>.
|
| |
| Result< void > | Cpp::makeResult (InterpreterInfo *II, llvm::Error E, const char *Producer, const char *ProducerSig) |
| |
| void | Cpp::DrainPendingInto (InterpreterInfo *II, ErrorSlice *S) |
| | Drain the consumer's per-interp buffer into a slice on failure.
|
| |
| void | Cpp::ClearPending (InterpreterInfo *II) |
| |
| unsigned | Cpp::GetPendingDiagnosticCount (InterpRef I) |
| |
| DiagnosticRef | Cpp::GetPendingDiagnostic (unsigned Idx, InterpRef I) |
| |
| void | Cpp::ClearPendingDiagnostics (InterpRef I) |
| |