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


Функция Option.exists<'T> (F#)

Вычисляет эквивалент List.exists для параметра.

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

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

// Signature:
exists : ('T -> bool) -> 'T option -> bool

// Usage:
exists predicate option

Параметры

  • predicate
    Тип: 'T -> bool

    Функция, вычисляющая логическое значение при указании значения из типа параметра.

  • option
    Тип: 'T option

    Входной параметр.

Возвращаемое значение

Возвращает значение false, если параметр option имеет значение None; в противном случае возвращается результат применения предиката к значению параметра option.

Заметки

Выражение exists p inp означает match inp with None -> false | Some x -> p x.

В скомпилированных сборках имя этой функции — Exists. При обращении к функции из языка, отличного от F#, или посредством отражения следует использовать это имя.

Пример

В следующем примере кода демонстрируется использование функции Option.exists.

let isValue opt value =
    Option.exists (fun elem -> elem = value) opt
let testOpt1 = Some(10)
let testOpt2 = Some(11)
let testOpt3 = None
printfn "%b" <| isValue testOpt1 10
printfn "%b" <| isValue testOpt2 10
printfn "%b" <| isValue testOpt3 10

Output

  

Платформы

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

См. также

Ссылки

Модуль Core.Option (F#)

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

Журнал изменений

Дата

Журнал

Причина

Май 2010

Добавлен пример кода.

Улучшение информации.