Поделиться через


Класс Core.ComparisonConditionalOnAttribute (F#)

Указывает, что универсальный тип удовлетворяет ограничению сравнения, только если аргумент типа удовлетворяет этому ограничению.

Пространство имен/путь к модулю: Microsoft.FSharp.Core

Сборка: FSharp.Core (в FSharp.Core.dll)

[<AttributeUsage(16384, AllowMultiple = false)>]
[<Sealed>]
type ComparisonConditionalOnAttribute =
 class
  new ComparisonConditionalOnAttribute : unit -> ComparisonConditionalOnAttribute
 end

Заметки

Данный атрибут используется для обозначения типа универсального контейнера и удовлетворяет ограничению сравнения F# только в том случае, если универсальный аргумент также удовлетворяет этому ограничению. Например, добавление этого атрибута к параметру 'T при определении типа C<'T> означает, что тип C<X> поддерживает сравнение, только если тип X также поддерживает сравнение и все остальные условия поддержки сравнения C<X> также соблюдены. Тип C<'T> можно использовать и с другими аргументами типов, но такой тип, как C<(int -> int)>, не будет поддерживать сравнение, поскольку тип (int -> int) представляет собой тип функции F# и не поддерживает сравнение.

Данный атрибут будет игнорироваться, если он используется с универсальными параметрами функций или методов.

Можно также использовать краткую форму имени, ComparisonConditionalOn.

Конструкторы

Элемент

Описание

new;

Создает экземпляр атрибута.

Платформы

Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows XP с пакетом обновления 3 (SP3), Windows XP x64 с пакетом обновления 2 (SP2), Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2), Windows Server 2003 с пакетом обновления 2 (SP2)

Сведения о версии

Среда выполнения F#

Поддерживается в версиях 2.0, 4.0

Silverlight

Поддерживается в версии 3

См. также

Ссылки

Пространство имен Microsoft.FSharp.Core (F#)