diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-01-08 21:17:09 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-01-08 21:17:09 +0000 |
| commit | 5d16475b3176250b1fad0f59a03863456db00e66 (patch) | |
| tree | d9486206b85e7cf9536c92f2dcda2811720ccc1b /llvm | |
| parent | cfd2ca5826a5a58e2971a69d53d7e1e10136437c (diff) | |
| download | bcm5719-llvm-5d16475b3176250b1fad0f59a03863456db00e66.tar.gz bcm5719-llvm-5d16475b3176250b1fad0f59a03863456db00e66.zip | |
Add get and getError methods to ErrorOr.
ErrorOr is modeled after boost::optional which has a get method.
llvm-svn: 198792
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/Support/ErrorOr.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/include/llvm/Support/ErrorOr.h b/llvm/include/llvm/Support/ErrorOr.h index 26af1e8c800..21ab4e721dc 100644 --- a/llvm/include/llvm/Support/ErrorOr.h +++ b/llvm/include/llvm/Support/ErrorOr.h @@ -178,10 +178,17 @@ public: return HasError ? 0 : unspecified_bool_true; } + T &get() { return *getStorage(); } + const T &get() const { return const_cast<ErrorOr<T> >(this)->get(); } + operator llvm::error_code() const { return HasError ? *getErrorStorage() : llvm::error_code::success(); } + error_code getError() const { + return HasError ? *getErrorStorage() : error_code::success(); + } + pointer operator ->() { return toPointer(getStorage()); } |

