Skip to content
This repository has been archived by the owner on Feb 12, 2024. It is now read-only.

Commit

Permalink
Initial untested impl of the bakery rewriter
Browse files Browse the repository at this point in the history
  • Loading branch information
Perksey committed Nov 10, 2023
1 parent ea692b6 commit fc91c78
Show file tree
Hide file tree
Showing 6 changed files with 793 additions and 105 deletions.
43 changes: 43 additions & 0 deletions sources/Core/Annotations/SupportedApiProfileAttribute.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
namespace Silk.NET.Core;

/// <summary>
/// Indicates that the annotated API is supported using a specific API profile.
/// </summary>
/// <param name="profile">The API profile supported.</param>
[AttributeUsage(
AttributeTargets.Assembly
| AttributeTargets.Class
| AttributeTargets.Constructor
| AttributeTargets.Enum
| AttributeTargets.Event
| AttributeTargets.Field
| AttributeTargets.Interface
| AttributeTargets.Method
| AttributeTargets.Module
| AttributeTargets.Property
| AttributeTargets.Struct,
AllowMultiple = true,
Inherited = false
)]
public class SupportedApiProfileAttribute(string profile) : Attribute
{
/// <summary>
/// The API profile supported e.g. gl, glcore, gles2, vulkan, vulkansc, etc.
/// </summary>
public string Profile { get; } = profile;

/// <summary>
/// The API extension required (in its native form).
/// </summary>
public string? Extension { get; init; }

/// <summary>
/// The minimum version of this API profile required in order to be supported.
/// </summary>
public string? MinVersion { get; init; }

/// <summary>
/// The maximum version of this API profile required in order to be supported.
/// </summary>
public string? MaxVersion { get; init; }
}
Loading

0 comments on commit fc91c78

Please sign in to comment.