forked from ClearFoundry/ClearScript
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCustomAttributes.cs
More file actions
23 lines (20 loc) · 784 Bytes
/
CustomAttributes.cs
File metadata and controls
23 lines (20 loc) · 784 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
using System;
using System.Reflection;
using Microsoft.ClearScript.Util;
namespace Microsoft.ClearScript
{
internal static class CustomAttributes
{
public static T[] GetOrLoad<T>(IHostContext context, ICustomAttributeProvider resource, bool inherit) where T : Attribute
{
var loader = context?.CustomAttributeLoader ?? HostSettings.CustomAttributeLoader;
return loader.GetOrLoad<T>(resource, inherit);
}
public static bool Has<T>(IHostContext context, ICustomAttributeProvider resource, bool inherit) where T : Attribute
{
return GetOrLoad<T>(context, resource, inherit).Length > 0;
}
}
}