Cosmos/source/Cosmos.IL2CPU.Plugs/PlugAttribute.cs
2014-11-26 01:13:58 +00:00

46 lines
No EOL
1 KiB
C#

using System;
namespace Cosmos.IL2CPU.Plugs
{
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)]
public sealed class PlugAttribute : Attribute
{
public PlugAttribute()
{
}
public PlugAttribute(Type target)
{
if (null == target) { throw new ArgumentNullException(); }
Target = target;
return;
}
public PlugAttribute(string targetName)
{
if (string.IsNullOrEmpty(targetName)) { throw new ArgumentNullException(); }
TargetName = targetName;
return;
}
public Type Target { get; set; }
public string TargetName { get; set; }
public bool Inheritable = false;
public bool IsMonoOnly = false;
public bool IsMicrosoftdotNETOnly = false;
public FrameworkVersion TargetFramework = FrameworkVersion.v4_0;
}
[Flags]
public enum FrameworkVersion
{
v1_0,
v1_1,
v2_0,
v3_0,
v3_5,
v3_5_Sp1,
v4_0
}
}