/
dev-npgsql
/
npgsql
Обзор
Документация
Войти
/
dev-npgsql
/
npgsql
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
v6.0.11
src/Shared/CodeAnalysis.cs
175 строк
6 KB
Shay Rojansky
Implementation of the ADO.NET batching API (#3860)
16 авг 2021, 14:08
Не верифицирован
16 авг 2021, 14:08
0d8dd34
Код
Авторство
О чём код?
using System; using System.Diagnostics.CodeAnalysis; #pragma warning disable 1591 namespace System.Diagnostics.CodeAnalysis { #if NETSTANDARD2_0 [AttributeUsageAttribute(AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.Property)] sealed class AllowNullAttribute : Attribute { } [AttributeUsageAttribute(AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.Property)] sealed class DisallowNullAttribute : Attribute { } [AttributeUsageAttribute(AttributeTargets.Method)] sealed class DoesNotReturnAttribute : Attribute { } [AttributeUsageAttribute(AttributeTargets.Parameter)] sealed class DoesNotReturnIfAttribute : Attribute { public DoesNotReturnIfAttribute(bool parameterValue) => ParameterValue = parameterValue; public bool ParameterValue { get; } } [AttributeUsageAttribute(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Constructor | AttributeTargets.Event | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Struct, AllowMultiple = false)] sealed class ExcludeFromCodeCoverageAttribute : Attribute { } [AttributeUsageAttribute(AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.Property | AttributeTargets.ReturnValue)] sealed class MaybeNullAttribute : Attribute { } [AttributeUsageAttribute(AttributeTargets.Parameter)] sealed class MaybeNullWhenAttribute : Attribute { public MaybeNullWhenAttribute(bool returnValue) => ReturnValue = returnValue; public bool ReturnValue { get; } } [AttributeUsageAttribute(AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.Property | AttributeTargets.ReturnValue)] sealed class NotNullAttribute : Attribute { } [AttributeUsageAttribute(AttributeTargets.Parameter | AttributeTargets.Property | AttributeTargets.ReturnValue, AllowMultiple = true)] sealed class NotNullIfNotNullAttribute : Attribute { public NotNullIfNotNullAttribute(string parameterName) => ParameterName = parameterName; public string ParameterName { get; } } [AttributeUsageAttribute(AttributeTargets.Parameter)] sealed class NotNullWhenAttribute : Attribute { public NotNullWhenAttribute(bool returnValue) => ReturnValue = returnValue; public bool ReturnValue { get; } } #endif #if !NET5_0_OR_GREATER [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, AllowMultiple = true, Inherited = false)] sealed class MemberNotNullAttribute : Attribute { public MemberNotNullAttribute(string member) => Members = new string[] { member }; public MemberNotNullAttribute(params string[] members) => Members = members; public string[] Members { get; } } [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, AllowMultiple = true, Inherited = false)] sealed class MemberNotNullWhenAttribute : Attribute { public MemberNotNullWhenAttribute(bool returnValue, string member) { ReturnValue = returnValue; Members = new string[1] { member }; } public MemberNotNullWhenAttribute(bool returnValue, params string[] members) { ReturnValue = returnValue; Members = members; } public bool ReturnValue { get; } public string[] Members { get; } } [AttributeUsage(AttributeTargets.Method | AttributeTargets.Constructor | AttributeTargets.Class, Inherited = false)] sealed class RequiresUnreferencedCodeAttribute : Attribute { public RequiresUnreferencedCodeAttribute(string message) { Message = message; } public string Message { get; } public string? Url { get; set; } } [AttributeUsage( AttributeTargets.Field | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter | AttributeTargets.Parameter | AttributeTargets.Property | AttributeTargets.Method | AttributeTargets.Class | AttributeTargets.Interface | AttributeTargets.Struct, Inherited = false)] sealed class DynamicallyAccessedMembersAttribute : Attribute { public DynamicallyAccessedMembersAttribute(DynamicallyAccessedMemberTypes memberTypes) { MemberTypes = memberTypes; } public DynamicallyAccessedMemberTypes MemberTypes { get; } } [Flags] enum DynamicallyAccessedMemberTypes { None = 0, PublicParameterlessConstructor = 0x0001, PublicConstructors = 0x0002 | PublicParameterlessConstructor, NonPublicConstructors = 0x0004, PublicMethods = 0x0008, NonPublicMethods = 0x0010, PublicFields = 0x0020, NonPublicFields = 0x0040, PublicNestedTypes = 0x0080, NonPublicNestedTypes = 0x0100, PublicProperties = 0x0200, NonPublicProperties = 0x0400, PublicEvents = 0x0800, NonPublicEvents = 0x1000, Interfaces = 0x2000, All = ~None } [AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = true)] sealed class UnconditionalSuppressMessageAttribute : Attribute { public UnconditionalSuppressMessageAttribute(string category, string checkId) { Category = category; CheckId = checkId; } public string Category { get; } public string CheckId { get; } public string? Scope { get; set; } public string? Target { get; set; } public string? MessageId { get; set; } public string? Justification { get; set; } } #endif } #if !NET5_0_OR_GREATER namespace System.Runtime.CompilerServices { internal static class IsExternalInit {} } #endif