r##"#pragma once //for assert #include //for std::abort #include //for std::move #include //for std::conditional #include #include "Boo.hpp" #include "c_Boo.h" #include "rust_option.h" #include #include #include "c_ControlItem.h" #include "rust_str.h" #include #include "c_Foo.h" namespace org_examples { template class FooWrapper; using Foo = FooWrapper; using FooRef = FooWrapper; template class FooWrapper {"##; "std::optional f1()"; "std::optional f2()"; "std::optional f3()"; "std::optional f4()"; "std::optional f5()"; "std::optional f6() const noexcept;"; "std::optional f7()"; "std::optional f8()"; r#"template inline std::optional FooWrapper::f8() const noexcept { struct CRustOptionCRustStrView ret = Foo_f8(this->self_); return (ret.is_some != 0) ? std::optional(std::string_view{ ret.val.data.data, ret.val.data.len }) : std::optional(); }"#; "std::optional f9()"; "std::optional f10()"; r#"template inline std::optional FooWrapper::f6() const noexcept { struct CRustOptionu32 ret = Foo_f6(this->self_); return (ret.is_some != 0) ? std::optional(static_cast(ret.val.data)) : std::optional(); }"#; "struct CRustOptionu32 Foo_f6(const FooOpaque * const self);";