This commit is contained in:
Matthew Leibowitz 2020-06-24 02:34:37 +02:00
Родитель 5e4c9e170c
Коммит a26d11b7fa
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: ECDB25CC0E22FC46
3 изменённых файлов: 1753 добавлений и 1711 удалений

Просмотреть файл

@ -26,7 +26,7 @@ namespace SkiaSharp
private static readonly Lazy<IntPtr> libSkiaSharpHandle =
new Lazy<IntPtr> (() => LibraryLoader.LoadLocalLibrary<SkiaApi> (SKIA));
private static T Get<T> (string name) where T : Delegate =>
private static T GetSymbol<T> (string name) where T : Delegate =>
LibraryLoader.GetSymbolDelegate<T> (libSkiaSharpHandle.Value, name);
#endif
}

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -373,14 +373,14 @@ namespace SkiaSharpGenerator
writer.WriteLine($"\t\tinternal static extern {returnType} {name} ({string.Join(", ", paramsList)});");
writer.WriteLine($"\t\t#else");
writer.WriteLine($"\t\tprivate partial class Delegates {{");
writer.WriteLine($"\t\t\t[UnmanagedFunctionPointer(CallingConvention.Cdecl)]");
writer.WriteLine($"\t\t\t[UnmanagedFunctionPointer (CallingConvention.Cdecl)]");
if (!string.IsNullOrEmpty(retAttr))
writer.WriteLine($"\t\t\t{retAttr}");
writer.WriteLine($"\t\t\tinternal delegate {returnType} {name} ({string.Join(", ", paramsList)});");
writer.WriteLine($"\t\t}}");
writer.WriteLine($"\t\tprivate static Delegates.{name} {name}_delegate;");
writer.WriteLine($"\t\tinternal static {returnType} {name} ({string.Join(", ", paramsList)}) =>");
writer.WriteLine($"\t\t\t({name}_delegate ??= Get<Delegates.{name}>(\"{name}\")).Invoke({string.Join(", ", paramNamesList)});");
writer.WriteLine($"\t\t\t({name}_delegate ??= GetSymbol<Delegates.{name}> (\"{name}\")).Invoke ({string.Join(", ", paramNamesList)});");
writer.WriteLine($"\t\t#endif");
}
writer.WriteLine();