diff --git a/src/bindings/mono/eo_mono/FunctionWrapper.cs b/src/bindings/mono/eo_mono/FunctionWrapper.cs index 04f1561507..d37fba9049 100644 --- a/src/bindings/mono/eo_mono/FunctionWrapper.cs +++ b/src/bindings/mono/eo_mono/FunctionWrapper.cs @@ -19,17 +19,21 @@ using System.Runtime.InteropServices; namespace Efl.Eo { -///Class to load functions pointers from a native module. +/// Class to load functions pointers from a native module. /// -///This class has a platform-dependent implementation on whether it -///is compiled for Windows (using LoadLibrary/GetProcAddress) or Unix -///(dlopen/dlsym). +/// This class has a platform-dependent implementation on whether it +/// is compiled for Windows (using LoadLibrary/GetProcAddress) or Unix +/// (dlopen/dlsym). +/// Since EFL 1.23. +/// internal static partial class FunctionInterop { - ///Loads a function pointer from the given module. - ///The name of the module containing the function. - ///The name of the function to search for. - ///A function pointer that can be used with delegates. + /// Loads a function pointer from the given module. + /// Since EFL 1.23. + /// + /// The name of the module containing the function. + /// The name of the function to search for. + /// A function pointer that can be used with delegates. internal static IntPtr LoadFunctionPointer(string moduleName, string functionName) { IntPtr module = NativeModule.LoadLibrary(moduleName); @@ -39,9 +43,11 @@ internal static partial class FunctionInterop return s; } - ///Loads a function pointer from the default module. - ///The name of the function to search for. - ///A function pointer that can be used with delegates. + /// Loads a function pointer from the default module. + /// Since EFL 1.23. + /// + /// The name of the function to search for. + /// A function pointer that can be used with delegates. internal static IntPtr LoadFunctionPointer(string functionName) { Eina.Log.Debug($"searching {null} for {functionName}"); @@ -51,12 +57,12 @@ internal static partial class FunctionInterop } } -///Wraps a native function in a portable manner. +/// Wraps a native function in a portable manner. /// -///This is intended as a workaround DllImport limitations when switching between mono and dotnet. -/// -///The parameter T must be a delegate. -/// +/// This is intended as a workaround DllImport limitations when switching between mono and dotnet. +/// The parameter T must be a delegate. +/// Since EFL 1.23. +/// class FunctionWrapper // NOTE: When supporting C# >=7.3, add a where T: System.Delegate? { private Lazy> loadResult; @@ -84,17 +90,21 @@ class FunctionWrapper // NOTE: When supporting C# >=7.3, add a where T: Syste } } - ///Creates a wrapper for the given function of the given module. - ///The name of the module containing the function. - ///The name of the function to search for. + /// Creates a wrapper for the given function of the given module. + /// Since EFL 1.23. + /// + /// The name of the module containing the function. + /// The name of the function to search for. internal FunctionWrapper(string moduleName, string functionName) : this(new NativeModule(moduleName), functionName) { } - ///Creates a wrapper for the given function of the given module. - ///The module wrapper containing the function. - ///The name of the function to search for. + /// Creates a wrapper for the given function of the given module. + /// Since EFL 1.23. + /// + /// The module wrapper containing the function. + /// The name of the function to search for. internal FunctionWrapper(NativeModule module, string functionName) { this.module = module; @@ -105,8 +115,10 @@ class FunctionWrapper // NOTE: When supporting C# >=7.3, add a where T: Syste }); } - ///Retrieves the result of function load. - ///The load result. + /// Retrieves the result of function load. + /// Since EFL 1.23. + /// + /// The load result. internal FunctionLoadResult Value { get @@ -116,7 +128,9 @@ class FunctionWrapper // NOTE: When supporting C# >=7.3, add a where T: Syste } } -///The outcome of the function load process. +/// The outcome of the function load process. +/// Since EFL 1.23. +/// enum FunctionLoadResultKind { ///Function was loaded successfully. @@ -127,16 +141,23 @@ enum FunctionLoadResultKind FunctionNotFound } -///Represents the result of loading a function pointer. +/// Represents the result of loading a function pointer. +/// Since EFL 1.23. +/// class FunctionLoadResult { - ///The status of the load. + /// The status of the load. + /// Since EFL 1.23. + /// FunctionLoadResultKind Kind; private T _Delegate; - ///The delegate wrapping the loaded function pointer. + /// The delegate wrapping the loaded function pointer. /// - ///Throws InvalidOperationException if trying to access while not loaded. + /// Throws InvalidOperationException if trying to access while not loaded. + /// Since EFL 1.23. + /// + /// The delegate wrapping the native function. internal T Delegate { get @@ -150,15 +171,19 @@ class FunctionLoadResult } } - ///Creates a new load result of the given kind. - ///The outcome of the load process. + /// Creates a new load result of the given kind. + /// Since EFL 1.23. + /// + /// The outcome of the load process. internal FunctionLoadResult(FunctionLoadResultKind kind) { this.Kind = kind; } - ///Creates a new load result with the given delegate. - ///The delegate wrapping the native function. + /// Creates a new load result with the given delegate. + /// Since EFL 1.23. + /// + /// The delegate wrapping the native function. internal FunctionLoadResult(T Delegate) { this._Delegate = Delegate; diff --git a/src/bindings/mono/eo_mono/FunctionWrapper_Unix.cs b/src/bindings/mono/eo_mono/FunctionWrapper_Unix.cs index 641f954cb1..636f83ebb1 100644 --- a/src/bindings/mono/eo_mono/FunctionWrapper_Unix.cs +++ b/src/bindings/mono/eo_mono/FunctionWrapper_Unix.cs @@ -24,10 +24,12 @@ internal static partial class FunctionInterop [DllImport(efl.Libs.Libdl)] private static extern IntPtr dlsym(IntPtr handle, string symbol); - ///Loads a function pointer from the given module. - ///The module containing the function. - ///The name of the function to search for. - ///A function pointer that can be used with delegates. + /// Loads a function pointer from the given module. + /// Since EFL 1.23. + /// + /// The module containing the function. + /// The name of the function to search for. + /// A function pointer that can be used with delegates. internal static IntPtr LoadFunctionPointer(IntPtr nativeLibraryHandle, string functionName) { Eina.Log.Debug($"searching {nativeLibraryHandle} for {functionName}");