/* * Author: Patrick-Christopher Mattulat * Company: Lynar Studios * E-Mail: webmaster@lynarstudios.com * Created: 2023-04-08 * Changed: 2024-09-11 * * */ #ifndef LS_STD_JNI_METHOD_HPP #define LS_STD_JNI_METHOD_HPP #include #include #include #include /* * @doc: class(name: 'JniMethod', package: 'core') * @doc: core.JniMethod.description('This class represents a class method within Java Native Interface (JNI) context.') * */ namespace ls::std::core::experimental { class LS_STD_DYNAMIC_GOAL JniMethod { public: explicit JniMethod(const ::std::string &_methodIdentifier, const ::std::string &_methodSignature); ~JniMethod(); [[nodiscard]] jmethodID getMethodId(); [[nodiscard]] ::std::string getMethodIdentifier() const; [[nodiscard]] ::std::string getMethodSignature() const; void setMethodId(jmethodID _methodId); void setMethodIdentifier(::std::string_view _methodIdentifier); void setMethodSignature(::std::string_view _methodSignature); private: jmethodID methodId{}; ::std::string methodIdentifier{}; ::std::string methodSignature{}; }; } #endif