mirror of
https://github.com/Ryujinx/Opentk.git
synced 2024-12-24 01:35:32 +00:00
Add support for function deprecation.
This commit is contained in:
parent
bf4a48548e
commit
93743f913d
|
@ -162,6 +162,11 @@ namespace Bind.GL2
|
|||
case "category":
|
||||
d.Category = words[1];
|
||||
break;
|
||||
|
||||
case "deprecated":
|
||||
d.Deprecated = true;
|
||||
d.DeprecatedVersion = words[1];
|
||||
break;
|
||||
}
|
||||
}
|
||||
while (!specFile.EndOfStream);
|
||||
|
@ -709,10 +714,16 @@ namespace Bind.GL2
|
|||
|
||||
private static void WriteMethod(BindStreamWriter sw, Function f)
|
||||
{
|
||||
if (f.Deprecated && Settings.IsEnabled(Settings.Legacy.AddDeprecationWarnings))
|
||||
{
|
||||
sw.WriteLine("[Obsolete(\"Deprecated in OpenGL {0}\")]", f.DeprecatedVersion);
|
||||
}
|
||||
|
||||
if (!f.CLSCompliant)
|
||||
{
|
||||
sw.WriteLine("[System.CLSCompliant(false)]");
|
||||
}
|
||||
|
||||
sw.WriteLine("[AutoGenerated(Category = \"{0}\", Version = \"{1}\", EntryPoint = \"{2}\")]",
|
||||
f.Category, f.Version, Settings.FunctionPrefix + f.WrappedDelegate.Name);
|
||||
sw.WriteLine("public static ");
|
||||
|
|
|
@ -139,6 +139,7 @@
|
|||
<Compile Include="..\GlobalAssemblyInfo.cs">
|
||||
<Link>Properties\GlobalAssemblyInfo.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="GL2\GL4Generator.cs" />
|
||||
<Compile Include="IBind.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
|
|
|
@ -127,6 +127,8 @@ namespace Bind
|
|||
NoDebugHelpers = 0x800,
|
||||
/// <summary>Generate both typed and untyped ("All") signatures for enum parameters.</summary>
|
||||
KeepUntypedEnums = 0x1000,
|
||||
/// <summary>Marks deprecated functions as [Obsolete]</summary>
|
||||
AddDeprecationWarnings = 0x2000,
|
||||
Tao = ConstIntEnums |
|
||||
NoAdvancedEnumProcessing |
|
||||
NoPublicUnsafeFunctions |
|
||||
|
@ -142,6 +144,24 @@ namespace Bind
|
|||
/*GenerateAllPermutations,*/
|
||||
}
|
||||
|
||||
// Returns true if flag is enabled.
|
||||
public static bool IsEnabled(Legacy flag)
|
||||
{
|
||||
return (Compatibility & flag) != (Legacy)0;
|
||||
}
|
||||
|
||||
// Enables the specified flag.
|
||||
public static void Enable(Legacy flag)
|
||||
{
|
||||
Compatibility |= flag;
|
||||
}
|
||||
|
||||
// Disables the specified flag.
|
||||
public static void Disable(Legacy flag)
|
||||
{
|
||||
Compatibility &= ~flag;
|
||||
}
|
||||
|
||||
/// <summary>True if multiple tokens should be dropped (e.g. FooARB, FooEXT and FooSGI).</summary>
|
||||
public static bool DropMultipleTokens
|
||||
{
|
||||
|
|
|
@ -79,6 +79,8 @@ namespace Bind.Structures
|
|||
ReturnType = new Type(d.ReturnType);
|
||||
Version = d.Version;
|
||||
//this.Version = !String.IsNullOrEmpty(d.Version) ? new string(d.Version.ToCharArray()) : "";
|
||||
Deprecated = d.Deprecated;
|
||||
DeprecatedVersion = d.DeprecatedVersion;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
@ -277,6 +279,9 @@ namespace Bind.Structures
|
|||
|
||||
#endregion
|
||||
|
||||
public bool Deprecated { get; set; }
|
||||
public string DeprecatedVersion { get; set; }
|
||||
|
||||
#endregion
|
||||
|
||||
#region --- Strings ---
|
||||
|
|
Loading…
Reference in a new issue