Skip to content

Allow vodozemac to work without c++ exceptions

tusooa requested to merge tusooa/noexcept into servant

Summary: This allows you to use libvodozemac in a c++ application without exceptions.

For each function that, in Rust, returns Result<T>, it adds a noexcept function called FUNC_NAME_noexcept that returns Box<Maybe<T>>. T or the error can further be extracted from the return value, by moving them out of the Maybe. After extraction, the Maybe will be invalidated and cannot be used again.

BUG: https://iron.lily-is.land/T139

Type: add

Test Plan:

  • Write unit tests to compile with -fno-exception and verify they pass.
  • Add docs about how to use the noexcept functions.
  • Build libkazv against this and verify kazv still works.
Edited by tusooa

Merge request reports