// AUTOGENERATED FILE - DO NOT MODIFY!
// This file generated by Djinni from example.djinni

#import "TXSTextboxResetListener+Private.h"
#import "TXSTextboxResetListener.h"
#import "DJIMarshal+Private.h"
#import "DJIObjcWrapperCache+Private.h"
#include <stdexcept>

static_assert(__has_feature(objc_arc), "Djinni requires ARC to be enabled for this file");

namespace djinni_generated {

class TextboxResetListener::ObjcProxy final
: public ::textsort::TextboxResetListener
, private ::djinni::ObjcProxyBase<ObjcType>
{
    friend class ::djinni_generated::TextboxResetListener;
public:
    using ObjcProxyBase::ObjcProxyBase;
    void reset(const std::string & c_text) override
    {
        @autoreleasepool {
            [djinni_private_get_proxied_objc_object() reset:(::djinni::String::fromCpp(c_text))];
        }
    }
};

}  // namespace djinni_generated

namespace djinni_generated {

auto TextboxResetListener::toCpp(ObjcType objc) -> CppType
{
    if (!objc) {
        return nullptr;
    }
    return ::djinni::get_objc_proxy<ObjcProxy>(objc);
}

auto TextboxResetListener::fromCppOpt(const CppOptType& cpp) -> ObjcType
{
    if (!cpp) {
        return nil;
    }
    return dynamic_cast<ObjcProxy&>(*cpp).djinni_private_get_proxied_objc_object();
}

}  // namespace djinni_generated
