X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fio%2Fmode.h;h=2e7527dc5202d3158895f8c20feb3f90236b17dd;hb=481b844ed7d180ffbf70223075f2fc1ffdb5b444;hp=5500dff613bc5e6a857f66bc9f9e7e4090be9893;hpb=8f2711fba7a2817840038630d9cf9a2060ecbe8e;p=libs%2Fcore.git diff --git a/source/io/mode.h b/source/io/mode.h index 5500dff..2e7527d 100644 --- a/source/io/mode.h +++ b/source/io/mode.h @@ -25,11 +25,15 @@ inline Mode operator&(Mode m, Mode n) inline Mode operator~(Mode m) { return Mode(~static_cast(m)); } +inline void adjust_mode(Mode &m, Mode f, bool b) +{ m = b ? (m|f) : (m&~f); } + class invalid_access: public std::logic_error { public: invalid_access(Mode); + ~invalid_access() throw() { } }; } // namespace IO