diff options
Diffstat (limited to 'src')
30 files changed, 38 insertions, 71 deletions
diff --git a/src/ThemeBuilder/components/StyleRuleSetEditor.cpp b/src/ThemeBuilder/components/StyleRuleSetEditor.cpp index a4e15fe7..a2dd3177 100644 --- a/src/ThemeBuilder/components/StyleRuleSetEditor.cpp +++ b/src/ThemeBuilder/components/StyleRuleSetEditor.cpp @@ -1,5 +1,4 @@ #include "StyleRuleSetEditor.h" -#include "cru/base/Exception.h" #include "cru/ui/DeleteLater.h" #include "cru/ui/ThemeManager.h" #include "cru/ui/controls/FlexLayout.h" diff --git a/src/ThemeBuilder/components/conditions/ConditionEditor.cpp b/src/ThemeBuilder/components/conditions/ConditionEditor.cpp index 3435b36f..da0db194 100644 --- a/src/ThemeBuilder/components/conditions/ConditionEditor.cpp +++ b/src/ThemeBuilder/components/conditions/ConditionEditor.cpp @@ -5,7 +5,6 @@ #include "CompoundConditionEditor.h" #include "FocusConditionEditor.h" #include "NoConditionEditor.h" -#include "cru/base/Exception.h" #include "cru/ui/controls/FlexLayout.h" namespace cru::theme_builder::components::conditions { diff --git a/src/ThemeBuilder/components/stylers/StylerEditor.cpp b/src/ThemeBuilder/components/stylers/StylerEditor.cpp index 4fd52b96..fbc97808 100644 --- a/src/ThemeBuilder/components/stylers/StylerEditor.cpp +++ b/src/ThemeBuilder/components/stylers/StylerEditor.cpp @@ -8,7 +8,6 @@ #include "MarginStylerEditor.h" #include "PaddingStylerEditor.h" #include "PreferredSizeStylerEditor.h" -#include "cru/base/Exception.h" #include "cru/ui/controls/FlexLayout.h" #include "cru/ui/render/FlexLayoutRenderObject.h" #include "cru/ui/style/Styler.h" diff --git a/src/base/Base.cpp b/src/base/Base.cpp index c6d9ac07..49b0c462 100644 --- a/src/base/Base.cpp +++ b/src/base/Base.cpp @@ -1,8 +1,46 @@ #include "cru/base/Base.h" +#include <cerrno> #include <exception> +#include <format> +#include <string_view> namespace cru { void UnreachableCode() { std::terminate(); } void NotImplemented() { std::terminate(); } + +static constexpr auto NO_MESSAGE = "No message."; + +Exception::Exception(std::string message, std::shared_ptr<std::exception> inner) + : message_(std::move(message)), inner_(std::move(inner)) {} + +Exception::~Exception() {} + +const char* Exception::what() const noexcept { return message_.c_str(); } + +void Exception::AppendMessage(const std::string& additional_message) { + AppendMessage(std::string_view(additional_message)); +} + +void Exception::AppendMessage(std::string_view additional_message) { + message_ += ' '; + message_ += additional_message; +} + +void Exception::AppendMessage( + std::optional<std::string_view> additional_message) { + if (additional_message) AppendMessage(*additional_message); +} + +ErrnoException::ErrnoException() : ErrnoException(NO_MESSAGE) {} + +ErrnoException::ErrnoException(int errno_code) + : ErrnoException(NO_MESSAGE, errno_code) {} + +ErrnoException::ErrnoException(std::string_view message) + : ErrnoException(message, errno) {} + +ErrnoException::ErrnoException(std::string_view message, int errno_code) + : Exception(std::format("{} Errno is {}.", message, errno_code)), + errno_code_(errno_code) {} } // namespace cru diff --git a/src/base/Buffer.cpp b/src/base/Buffer.cpp index 386e46cc..838c6f12 100644 --- a/src/base/Buffer.cpp +++ b/src/base/Buffer.cpp @@ -1,5 +1,4 @@ #include "cru/base/Buffer.h" -#include "cru/base/Exception.h" #include <cstring> diff --git a/src/base/CMakeLists.txt b/src/base/CMakeLists.txt index 3cffb125..aa9a8a6b 100644 --- a/src/base/CMakeLists.txt +++ b/src/base/CMakeLists.txt @@ -1,7 +1,6 @@ add_library(CruBase Base.cpp Buffer.cpp - Exception.cpp PropertyTree.cpp StringUtil.cpp SubProcess.cpp diff --git a/src/base/Exception.cpp b/src/base/Exception.cpp deleted file mode 100644 index 5bfe27db..00000000 --- a/src/base/Exception.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#include "cru/base/Exception.h" - -#include <cerrno> -#include <format> -#include <string_view> - -constexpr auto NO_MESSAGE = "No message."; - -namespace cru { -Exception::Exception(std::string message, std::shared_ptr<std::exception> inner) - : message_(std::move(message)), inner_(std::move(inner)) {} - -Exception::~Exception() {} - -const char* Exception::what() const noexcept { return message_.c_str(); } - -void Exception::AppendMessage(const std::string& additional_message) { - AppendMessage(std::string_view(additional_message)); -} - -void Exception::AppendMessage(std::string_view additional_message) { - message_ += ' '; - message_ += additional_message; -} - -void Exception::AppendMessage( - std::optional<std::string_view> additional_message) { - if (additional_message) AppendMessage(*additional_message); -} - -ErrnoException::ErrnoException() : ErrnoException(NO_MESSAGE) {} - -ErrnoException::ErrnoException(int errno_code) - : ErrnoException(NO_MESSAGE, errno_code) {} - -ErrnoException::ErrnoException(std::string_view message) - : ErrnoException(message, errno) {} - -ErrnoException::ErrnoException(std::string_view message, int errno_code) - : Exception(std::format("{} Errno is {}.", message, errno_code)), - errno_code_(errno_code) {} -} // namespace cru diff --git a/src/base/PropertyTree.cpp b/src/base/PropertyTree.cpp index ea47dabc..fb640761 100644 --- a/src/base/PropertyTree.cpp +++ b/src/base/PropertyTree.cpp @@ -1,5 +1,4 @@ #include "cru/base/PropertyTree.h" -#include "cru/base/Exception.h" namespace cru { std::string PropertySubTreeRef::CombineKey(std::string_view left, diff --git a/src/base/StringUtil.cpp b/src/base/StringUtil.cpp index 5c8686dd..a5cc3122 100644 --- a/src/base/StringUtil.cpp +++ b/src/base/StringUtil.cpp @@ -1,6 +1,5 @@ #include "cru/base/StringUtil.h" #include "cru/base/Base.h" -#include "cru/base/Exception.h" #include <algorithm> #include <cctype> diff --git a/src/base/io/CFileStream.cpp b/src/base/io/CFileStream.cpp index f0d4790b..db477077 100644 --- a/src/base/io/CFileStream.cpp +++ b/src/base/io/CFileStream.cpp @@ -1,5 +1,4 @@ #include "cru/base/io/CFileStream.h" -#include "cru/base/Exception.h" #include "cru/base/io/Stream.h" #include <cstdio> diff --git a/src/base/io/MemoryStream.cpp b/src/base/io/MemoryStream.cpp index bba0e618..4d289197 100644 --- a/src/base/io/MemoryStream.cpp +++ b/src/base/io/MemoryStream.cpp @@ -1,7 +1,6 @@ #include "cru/base/io/MemoryStream.h" #include <cstring> -#include "cru/base/Exception.h" #include "cru/base/io/Stream.h" namespace cru::io { diff --git a/src/base/io/Resource.cpp b/src/base/io/Resource.cpp index 48045e59..df7277b6 100644 --- a/src/base/io/Resource.cpp +++ b/src/base/io/Resource.cpp @@ -1,6 +1,5 @@ #include "cru/base/io/Resource.h" #include "cru/base/Base.h" -#include "cru/base/Exception.h" #if defined(CRU_PLATFORM_OSX) #include <CoreFoundation/CoreFoundation.h> diff --git a/src/base/io/Stream.cpp b/src/base/io/Stream.cpp index e07f2899..56db547a 100644 --- a/src/base/io/Stream.cpp +++ b/src/base/io/Stream.cpp @@ -1,5 +1,4 @@ #include "cru/base/io/Stream.h" -#include "cru/base/Exception.h" #include <algorithm> #include <format> diff --git a/src/base/platform/unix/EventLoop.cpp b/src/base/platform/unix/EventLoop.cpp index 86c0deb9..200f6abb 100644 --- a/src/base/platform/unix/EventLoop.cpp +++ b/src/base/platform/unix/EventLoop.cpp @@ -1,5 +1,4 @@ #include "cru/base/platform/unix/EventLoop.h" -#include "cru/base/Exception.h" #include <poll.h> #include <algorithm> diff --git a/src/base/platform/unix/PosixSpawnSubProcess.cpp b/src/base/platform/unix/PosixSpawnSubProcess.cpp index 7362175f..c287d253 100644 --- a/src/base/platform/unix/PosixSpawnSubProcess.cpp +++ b/src/base/platform/unix/PosixSpawnSubProcess.cpp @@ -1,5 +1,4 @@ #include "cru/base/platform/unix/PosixSpawnSubProcess.h" -#include "cru/base/Exception.h" #include "cru/base/Guard.h" #include "cru/base/SubProcess.h" #include "cru/base/log/Logger.h" diff --git a/src/base/platform/unix/UnixFile.cpp b/src/base/platform/unix/UnixFile.cpp index 00ed3b9c..001b4fb9 100644 --- a/src/base/platform/unix/UnixFile.cpp +++ b/src/base/platform/unix/UnixFile.cpp @@ -1,5 +1,4 @@ #include "cru/base/platform/unix/UnixFile.h" -#include "cru/base/Exception.h" #include "cru/base/log/Logger.h" #include <fcntl.h> diff --git a/src/base/platform/unix/UnixFileStream.cpp b/src/base/platform/unix/UnixFileStream.cpp index 43ff2244..df1ddffa 100644 --- a/src/base/platform/unix/UnixFileStream.cpp +++ b/src/base/platform/unix/UnixFileStream.cpp @@ -1,5 +1,4 @@ #include "cru/base/platform/unix/UnixFileStream.h" -#include "cru/base/Exception.h" #include "cru/base/io/Stream.h" #include <fcntl.h> diff --git a/src/base/platform/win/StreamConvert.cpp b/src/base/platform/win/StreamConvert.cpp index f7a0537c..e0266765 100644 --- a/src/base/platform/win/StreamConvert.cpp +++ b/src/base/platform/win/StreamConvert.cpp @@ -1,7 +1,6 @@ #include "cru/base/platform/win/StreamConvert.h" #include "BrigdeComStream.h" #include "Win32FileStreamPrivate.h" -#include "cru/base/Exception.h" #include "cru/base/io/MemoryStream.h" #include "cru/base/io/OpenFileFlag.h" #include "cru/base/platform/win/ComAutoInit.h" diff --git a/src/platform/graphics/Geometry.cpp b/src/platform/graphics/Geometry.cpp index 3d88a644..859a7bd6 100644 --- a/src/platform/graphics/Geometry.cpp +++ b/src/platform/graphics/Geometry.cpp @@ -1,6 +1,5 @@ #include "cru/platform/graphics/Geometry.h" -#include "cru/base/Exception.h" #include "cru/base/StringUtil.h" #include "cru/platform/graphics/Factory.h" diff --git a/src/platform/graphics/cairo/CairoImageFactory.cpp b/src/platform/graphics/cairo/CairoImageFactory.cpp index a634d135..f4707090 100644 --- a/src/platform/graphics/cairo/CairoImageFactory.cpp +++ b/src/platform/graphics/cairo/CairoImageFactory.cpp @@ -1,5 +1,4 @@ #include "cru/platform/graphics/cairo/CairoImageFactory.h" -#include "cru/base/Exception.h" #include "cru/platform/graphics/cairo/Base.h" #include "cru/platform/graphics/cairo/CairoImage.h" diff --git a/src/platform/gui/UiApplication.cpp b/src/platform/gui/UiApplication.cpp index 086440c0..f035224f 100644 --- a/src/platform/gui/UiApplication.cpp +++ b/src/platform/gui/UiApplication.cpp @@ -1,7 +1,6 @@ #include "cru/platform/gui/UiApplication.h" #include "cru/base/Base.h" -#include "cru/base/Exception.h" namespace cru::platform::gui { diff --git a/src/platform/gui/osx/Cursor.mm b/src/platform/gui/osx/Cursor.mm index e9d8f484..23088e2a 100644 --- a/src/platform/gui/osx/Cursor.mm +++ b/src/platform/gui/osx/Cursor.mm @@ -1,6 +1,5 @@ #include "cru/platform/gui/osx/Cursor.h" #include "CursorPrivate.h" -#include "cru/base/Exception.h" #include <memory> diff --git a/src/platform/gui/osx/Keyboard.mm b/src/platform/gui/osx/Keyboard.mm index ea1d2d4e..e8d22045 100644 --- a/src/platform/gui/osx/Keyboard.mm +++ b/src/platform/gui/osx/Keyboard.mm @@ -1,6 +1,5 @@ #include "cru/platform/gui/osx/Keyboard.h" #import "KeyboardPrivate.h" -#include "cru/base/Exception.h" #import <AppKit/NSText.h> #import <Carbon/Carbon.h> diff --git a/src/platform/gui/xcb/Cursor.cpp b/src/platform/gui/xcb/Cursor.cpp index 69d904df..2feb87dc 100644 --- a/src/platform/gui/xcb/Cursor.cpp +++ b/src/platform/gui/xcb/Cursor.cpp @@ -1,5 +1,4 @@ #include "cru/platform/gui/xcb/Cursor.h" -#include "cru/base/Exception.h" #include "cru/platform/gui/xcb/UiApplication.h" #include <xcb/xcb.h> diff --git a/src/platform/gui/xcb/Input.cpp b/src/platform/gui/xcb/Input.cpp index 9b6d76c2..3482d3ab 100644 --- a/src/platform/gui/xcb/Input.cpp +++ b/src/platform/gui/xcb/Input.cpp @@ -1,5 +1,4 @@ #include "cru/platform/gui/xcb/Input.h" -#include "cru/base/Exception.h" #include "cru/base/Guard.h" #include "cru/platform/gui/xcb/UiApplication.h" diff --git a/src/ui/mapper/CursorMapper.cpp b/src/ui/mapper/CursorMapper.cpp index c0c8e8d2..6a08b788 100644 --- a/src/ui/mapper/CursorMapper.cpp +++ b/src/ui/mapper/CursorMapper.cpp @@ -1,6 +1,5 @@ #include "cru/ui/mapper/CursorMapper.h" #include "../Helper.h" -#include "cru/base/Exception.h" #include "cru/platform/gui/Cursor.h" #include "cru/platform/gui/UiApplication.h" diff --git a/src/ui/mapper/style/ClickStateConditionMapper.cpp b/src/ui/mapper/style/ClickStateConditionMapper.cpp index badaca85..16ef1209 100644 --- a/src/ui/mapper/style/ClickStateConditionMapper.cpp +++ b/src/ui/mapper/style/ClickStateConditionMapper.cpp @@ -1,6 +1,5 @@ #include "cru/ui/mapper/style/ClickStateConditionMapper.h" #include "cru/base/ClonablePtr.h" -#include "cru/base/Exception.h" #include "cru/base/StringUtil.h" #include "cru/ui/helper/ClickDetector.h" #include "cru/ui/style/Condition.h" diff --git a/src/ui/mapper/style/StyleRuleMapper.cpp b/src/ui/mapper/style/StyleRuleMapper.cpp index 345728d2..f14d11da 100644 --- a/src/ui/mapper/style/StyleRuleMapper.cpp +++ b/src/ui/mapper/style/StyleRuleMapper.cpp @@ -1,7 +1,5 @@ #include "cru/ui/mapper/style/StyleRuleMapper.h" #include "cru/base/ClonablePtr.h" -#include "cru/base/Exception.h" -#include "cru/base/log/Logger.h" #include "cru/ui/mapper/MapperRegistry.h" #include "cru/ui/mapper/style/IConditionMapper.h" #include "cru/ui/mapper/style/IStylerMapper.h" diff --git a/src/ui/render/RenderObject.cpp b/src/ui/render/RenderObject.cpp index d10fd897..fcd44143 100644 --- a/src/ui/render/RenderObject.cpp +++ b/src/ui/render/RenderObject.cpp @@ -1,6 +1,5 @@ #include "cru/ui/render/RenderObject.h" -#include "cru/base/Exception.h" #include "cru/base/log/Logger.h" #include "cru/platform/GraphicsBase.h" #include "cru/ui/DebugFlags.h" diff --git a/src/ui/style/StyleRuleSet.cpp b/src/ui/style/StyleRuleSet.cpp index b7a82577..e1b91e4d 100644 --- a/src/ui/style/StyleRuleSet.cpp +++ b/src/ui/style/StyleRuleSet.cpp @@ -1,6 +1,5 @@ #include "cru/ui/style/StyleRuleSet.h" #include "cru/base/Event.h" -#include "cru/base/Exception.h" #include "cru/ui/controls/Control.h" #include "cru/ui/model/IListChangeNotify.h" |
