[nostalgia,olympic] Replace oxIgnoreError with std::ignore

This commit is contained in:
Gary Talent 2024-04-22 23:40:48 -05:00
parent ea1feb726e
commit ed4f0e1f2b
11 changed files with 27 additions and 30 deletions

View File

@ -222,8 +222,8 @@ int caller2() {
``` ```
Lastly, there are a few macros available to help in passing ```ox::Error```s Lastly, there are a few macros available to help in passing ```ox::Error```s
back up the call stack, ```oxReturnError```, ```oxThrowError```, back up the call stack, ```oxReturnError```, ```oxThrowError```, and
```oxIgnoreError```, and ```oxRequire```. ```oxRequire```.
```oxReturnError``` is by far the more helpful of the two. ```oxReturnError``` is by far the more helpful of the two.
```oxReturnError``` will return an ```ox::Error``` if it is not 0 and ```oxReturnError``` will return an ```ox::Error``` if it is not 0 and
@ -232,13 +232,10 @@ Because exceptions are disabled for GBA builds and thus cannot be used in the
engine, ```oxThrowError``` is only really useful at the boundary between engine, ```oxThrowError``` is only really useful at the boundary between
engine libraries and Nostalgia Studio. engine libraries and Nostalgia Studio.
```oxIgnoreError``` does what it says, it ignores the error.
Since ```ox::Error``` is always nodiscard, you must do something with them. Since ```ox::Error``` is always nodiscard, you must do something with them.
In extremely rare cases, you may not have anything you can do with them or you In rare cases, you may not have anything you can do with them or you may know
may know the code will never fail in that particular instance. the code will never fail in that particular instance.
This should be used very sparingly. This should be used sparingly.
At the time of this writing, it has only been used 4 times in 20,000 lines of
code.
```cpp ```cpp
@ -257,7 +254,7 @@ ox::Error engineCode() noexcept {
void anyCode() { void anyCode() {
auto [val, err] = foo(1); auto [val, err] = foo(1);
oxIgnoreError(err); std::ignore = err;
doStuff(val); doStuff(val);
} }
``` ```

View File

@ -28,8 +28,8 @@ void panic(const char *file, int line, const char *panicMsg, ox::Error const&err
ox::heapmgr::initHeap(HEAP_BEGIN, HEAP_END); ox::heapmgr::initHeap(HEAP_BEGIN, HEAP_END);
auto tctx = turbine::init(keel::loadRomFs("").unwrap(), "Nostalgia").unwrap(); auto tctx = turbine::init(keel::loadRomFs("").unwrap(), "Nostalgia").unwrap();
auto ctx = init(*tctx).unwrap(); auto ctx = init(*tctx).unwrap();
oxIgnoreError(initGfx(*ctx, {})); std::ignore = initGfx(*ctx, {});
oxIgnoreError(initConsole(*ctx)); std::ignore = initConsole(*ctx);
setBgStatus(*ctx, 0, true); setBgStatus(*ctx, 0, true);
clearBg(*ctx, 0); clearBg(*ctx, 0);
ox::BString<23> serr = "Error code: "; ox::BString<23> serr = "Error code: ";

View File

@ -19,7 +19,7 @@ void AddPageCommand::redo() noexcept {
} }
void AddPageCommand::undo() noexcept { void AddPageCommand::undo() noexcept {
oxIgnoreError(m_pal.pages.erase(static_cast<std::size_t>(m_pal.pages.size() - 1))); std::ignore = m_pal.pages.erase(static_cast<std::size_t>(m_pal.pages.size() - 1));
} }
@ -43,7 +43,7 @@ void DuplicatePageCommand::redo() noexcept {
void DuplicatePageCommand::undo() noexcept { void DuplicatePageCommand::undo() noexcept {
m_page = std::move(m_pal.pages[m_dstIdx]); m_page = std::move(m_pal.pages[m_dstIdx]);
oxIgnoreError(m_pal.pages.erase(static_cast<std::size_t>(m_dstIdx))); std::ignore = m_pal.pages.erase(static_cast<std::size_t>(m_dstIdx));
} }
size_t DuplicatePageCommand::insertIdx() const noexcept { size_t DuplicatePageCommand::insertIdx() const noexcept {
@ -62,7 +62,7 @@ int RemovePageCommand::commandId() const noexcept {
void RemovePageCommand::redo() noexcept { void RemovePageCommand::redo() noexcept {
m_page = std::move(m_pal.pages[m_idx]); m_page = std::move(m_pal.pages[m_idx]);
oxIgnoreError(m_pal.pages.erase(static_cast<std::size_t>(m_idx))); std::ignore = m_pal.pages.erase(static_cast<std::size_t>(m_idx));
} }
void RemovePageCommand::undo() noexcept { void RemovePageCommand::undo() noexcept {
@ -86,7 +86,7 @@ void AddColorCommand::redo() noexcept {
} }
void AddColorCommand::undo() noexcept { void AddColorCommand::undo() noexcept {
oxIgnoreError(m_pal->pages[m_page].erase(static_cast<std::size_t>(m_idx))); std::ignore = m_pal->pages[m_page].erase(static_cast<std::size_t>(m_idx));
} }
@ -102,7 +102,7 @@ int RemoveColorCommand::commandId() const noexcept {
} }
void RemoveColorCommand::redo() noexcept { void RemoveColorCommand::redo() noexcept {
oxIgnoreError(m_pal->pages[m_page].erase(static_cast<std::size_t>(m_idx))); std::ignore = m_pal->pages[m_page].erase(static_cast<std::size_t>(m_idx));
} }
void RemoveColorCommand::undo() noexcept { void RemoveColorCommand::undo() noexcept {
@ -171,7 +171,7 @@ void MoveColorCommand::undo() noexcept {
void MoveColorCommand::moveColor(int idx, int offset) noexcept { void MoveColorCommand::moveColor(int idx, int offset) noexcept {
const auto c = m_pal->pages[m_page][static_cast<std::size_t>(idx)]; const auto c = m_pal->pages[m_page][static_cast<std::size_t>(idx)];
oxIgnoreError(m_pal->pages[m_page].erase(static_cast<std::size_t>(idx))); std::ignore = m_pal->pages[m_page].erase(static_cast<std::size_t>(idx));
m_pal->pages[m_page].insert(static_cast<std::size_t>(idx + offset), c); m_pal->pages[m_page].insert(static_cast<std::size_t>(idx + offset), c);
} }

View File

@ -81,7 +81,7 @@ TileSheetEditorImGui::TileSheetEditorImGui(studio::StudioContext &sctx, ox::CRSt
m_tctx(m_sctx.tctx), m_tctx(m_sctx.tctx),
m_view(m_sctx, path, *undoStack()), m_view(m_sctx, path, *undoStack()),
m_model(m_view.model()) { m_model(m_view.model()) {
oxIgnoreError(setPaletteSelection()); std::ignore = setPaletteSelection();
// connect signal/slots // connect signal/slots
undoStack()->changeTriggered.connect(this, &TileSheetEditorImGui::markUnsavedChanges); undoStack()->changeTriggered.connect(this, &TileSheetEditorImGui::markUnsavedChanges);
m_subsheetEditor.inputSubmitted.connect(this, &TileSheetEditorImGui::updateActiveSubsheet); m_subsheetEditor.inputSubmitted.connect(this, &TileSheetEditorImGui::updateActiveSubsheet);

View File

@ -117,7 +117,7 @@ class AssetRef: public ox::SignalHandler {
} }
if (m_ctr) { if (m_ctr) {
m_ctr->decRefs(); m_ctr->decRefs();
oxIgnoreError(m_ctr->updated.disconnectObject(this)); std::ignore = m_ctr->updated.disconnectObject(this);
} }
m_ctr = h.m_ctr; m_ctr = h.m_ctr;
if (m_ctr) { if (m_ctr) {
@ -133,11 +133,11 @@ class AssetRef: public ox::SignalHandler {
} }
if (m_ctr) { if (m_ctr) {
m_ctr->decRefs(); m_ctr->decRefs();
oxIgnoreError(m_ctr->updated.disconnectObject(this)); std::ignore = m_ctr->updated.disconnectObject(this);
} }
m_ctr = h.m_ctr; m_ctr = h.m_ctr;
if (m_ctr) { if (m_ctr) {
oxIgnoreError(m_ctr->updated.disconnectObject(&h)); std::ignore = m_ctr->updated.disconnectObject(&h);
m_ctr->updated.connect(this, &AssetRef::emitUpdated); m_ctr->updated.connect(this, &AssetRef::emitUpdated);
} }
h.m_ctr = nullptr; h.m_ctr = nullptr;

View File

@ -11,7 +11,7 @@ ox::Error init(
ox::UPtr<ox::FileSystem> &&fs, ox::UPtr<ox::FileSystem> &&fs,
ox::CRStringView appName) noexcept { ox::CRStringView appName) noexcept {
ctx.appName = appName; ctx.appName = appName;
oxIgnoreError(setRomFs(ctx, std::move(fs))); std::ignore = setRomFs(ctx, std::move(fs));
#ifndef OX_BARE_METAL #ifndef OX_BARE_METAL
auto const&mods = modules(); auto const&mods = modules();
for (auto &mod : mods) { for (auto &mod : mods) {

View File

@ -417,10 +417,10 @@ ox::Error StudioUI::closeFile(ox::CRStringView path) noexcept {
if (!m_openFiles.contains(path)) { if (!m_openFiles.contains(path)) {
return {}; return {};
} }
oxIgnoreError(m_openFiles.erase(std::remove(m_openFiles.begin(), m_openFiles.end(), path))); std::ignore = m_openFiles.erase(std::remove(m_openFiles.begin(), m_openFiles.end(), path));
// save to config // save to config
studio::editConfig<StudioConfig>(keelCtx(m_ctx), [&](StudioConfig *config) { studio::editConfig<StudioConfig>(keelCtx(m_ctx), [&](StudioConfig *config) {
oxIgnoreError(config->openFiles.erase(std::remove(config->openFiles.begin(), config->openFiles.end(), path))); std::ignore = config->openFiles.erase(std::remove(config->openFiles.begin(), config->openFiles.end(), path));
}); });
return {}; return {};
} }

View File

@ -24,7 +24,7 @@ static ox::Result<ox::String> toResult(nfdresult_t r, NFD::UniquePathN const&pat
ox::String out; ox::String out;
for (auto i = 0u; path.get()[i]; ++i) { for (auto i = 0u; path.get()[i]; ++i) {
auto const c = static_cast<char>(path.get()[i]); auto const c = static_cast<char>(path.get()[i]);
oxIgnoreError(out.append(&c, 1)); std::ignore = out.append(&c, 1);
} }
return out; return out;
} }

View File

@ -9,13 +9,13 @@
namespace studio { namespace studio {
void TaskRunner::update(turbine::Context &ctx) noexcept { void TaskRunner::update(turbine::Context &ctx) noexcept {
oxIgnoreError(m_tasks.erase(std::remove_if(m_tasks.begin(), m_tasks.end(), [&](ox::UPtr<studio::Task> &t) { std::ignore = m_tasks.erase(std::remove_if(m_tasks.begin(), m_tasks.end(), [&](ox::UPtr<studio::Task> &t) {
auto const done = t->update(ctx) == TaskState::Done; auto const done = t->update(ctx) == TaskState::Done;
if (done) { if (done) {
t->finished.emit(); t->finished.emit();
} }
return done; return done;
}))); }));
} }
void TaskRunner::add(Task &task) noexcept { void TaskRunner::add(Task &task) noexcept {

View File

@ -12,7 +12,7 @@ bool UndoCommand::mergeWith(UndoCommand const*) noexcept {
void UndoStack::push(ox::UPtr<UndoCommand> &&cmd) noexcept { void UndoStack::push(ox::UPtr<UndoCommand> &&cmd) noexcept {
for (auto const i = m_stackIdx; i < m_stack.size();) { for (auto const i = m_stackIdx; i < m_stack.size();) {
oxIgnoreError(m_stack.erase(i)); std::ignore = m_stack.erase(i);
} }
cmd->redo(); cmd->redo();
redoTriggered.emit(cmd.get()); redoTriggered.emit(cmd.get());

View File

@ -22,7 +22,7 @@ void addDrawer(Context &ctx, Drawer *cd) noexcept {
void removeDrawer(Context &ctx, Drawer *cd) noexcept { void removeDrawer(Context &ctx, Drawer *cd) noexcept {
for (auto i = 0u; i < ctx.drawers.size(); ++i) { for (auto i = 0u; i < ctx.drawers.size(); ++i) {
if (ctx.drawers[i] == cd) { if (ctx.drawers[i] == cd) {
oxIgnoreError(ctx.drawers.erase(i)); std::ignore = ctx.drawers.erase(i);
break; break;
} }
} }