private static string GetTypeSignature()

in utils/SkiaSharpGenerator/Cookies/CookieDetector.cs [131:171]


		private static string GetTypeSignature(MethodDefinition method, TypeDefinition type)
		{
			if (type.IsEnum || type.IsPointer || type.IsArray)
				return "I";

			// special delegates
			if ((type.FullName.StartsWith("SkiaSharp.") || type.FullName.StartsWith("HarfBuzzSharp.")) && type.FullName.EndsWith("ProxyDelegate"))
				return "I";

			switch (type.FullName)
			{
				case "System.String":
				case "System.UInt16":
				case "System.Int64":
				case "System.UInt32":
				case "System.Int32":
				case "System.IntPtr":
				case "System.Byte":
				case "System.Boolean":
				case "System.Void*":
				case "SkiaSharp.SKManagedDrawableDelegates":
				case "SkiaSharp.SKManagedStreamDelegates":
				case "SkiaSharp.SKManagedWStreamDelegates":
					return "I";

				case "System.Double":
					return "D";

				case "System.Single":
					return "F";

				case "SkiaSharp.GRVkBackendContextNative":
					return "O";

				case "System.Void":
					return "V";

				default:
					throw new NotSupportedException($"Unsupported parameter type for {method.FullName}: {type}");
			}
		}