exception: Add error for incomplete operations
Change-Id: Ic7ea2cf08df051b67b23ffdd8aafc4a7931c4e45
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/include/stdplus/exception.hpp b/include/stdplus/exception.hpp
index c06ff9f..f2d40f2 100644
--- a/include/stdplus/exception.hpp
+++ b/include/stdplus/exception.hpp
@@ -10,6 +10,12 @@
namespace exception
{
+struct Incomplete : public std::system_error
+{
+ Incomplete(const char* what);
+ Incomplete(const std::string& what);
+};
+
struct WouldBlock : public std::system_error
{
WouldBlock(const char* what);
diff --git a/src/exception.cpp b/src/exception.cpp
index cd79ebc..3fe7a99 100644
--- a/src/exception.cpp
+++ b/src/exception.cpp
@@ -21,6 +21,16 @@
namespace exception
{
+Incomplete::Incomplete(const char* what) :
+ std::system_error(std::make_error_code(std::errc::illegal_byte_sequence),
+ what)
+{}
+
+Incomplete::Incomplete(const std::string& what) :
+ std::system_error(std::make_error_code(std::errc::illegal_byte_sequence),
+ what)
+{}
+
WouldBlock::WouldBlock(const char* what) :
std::system_error(std::make_error_code(std::errc::operation_would_block),
what)