summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-01-08 21:17:09 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-01-08 21:17:09 +0000
commit5d16475b3176250b1fad0f59a03863456db00e66 (patch)
treed9486206b85e7cf9536c92f2dcda2811720ccc1b /llvm
parentcfd2ca5826a5a58e2971a69d53d7e1e10136437c (diff)
downloadbcm5719-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.h7
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());
}
OpenPOWER on IntegriCloud