2023-10-31 06:32:45 -04:00
|
|
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
|
|
|
|
|
|
using System;
|
|
|
|
|
|
|
|
|
|
namespace UnrealBuildTool
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Attribute which can be applied to a ModuleRules-dervied class to indicate which module groups it belongs to
|
|
|
|
|
/// </summary>
|
|
|
|
|
[AttributeUsage(AttributeTargets.Class, AllowMultiple = true)]
|
2024-04-02 20:44:04 -04:00
|
|
|
public sealed class ModuleGroupsAttribute : Attribute
|
2023-10-31 06:32:45 -04:00
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Array of module group names
|
|
|
|
|
/// </summary>
|
2024-04-03 13:25:26 -04:00
|
|
|
public string[] ModuleGroups { get; }
|
2023-10-31 06:32:45 -04:00
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Initialize the attribute with a list of module groups
|
|
|
|
|
/// </summary>
|
2024-04-03 13:25:26 -04:00
|
|
|
/// <param name="moduleGroups">Variable-length array of module group arguments</param>
|
|
|
|
|
public ModuleGroupsAttribute(params string[] moduleGroups)
|
2023-10-31 06:32:45 -04:00
|
|
|
{
|
2024-04-03 13:25:26 -04:00
|
|
|
ModuleGroups = moduleGroups;
|
2023-10-31 06:32:45 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|