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


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

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

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

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

// Signature:
bind : ('T -> 'U option) -> 'T option -> 'U option

// Usage:
bind binder option

Параметры

  • binder
    Тип: 'T -> 'U option

    Функция, которая принимает значение типа T из параметра и преобразует его в параметр, содержащий значение типа U.

  • option
    Тип: 'T option

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

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

Параметр выходного типа связывателя.

Заметки

Выражение Option.bind f inp означает match inp with None -> None | Some x -> f x.

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

Пример

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

let stringOpt1 = Some("Mirror Image")
let stringOpt2 = None
let reverse (string : System.String) =
    match string with
    | "" -> None
    | s -> Some(new System.String(string.ToCharArray() |> Array.rev))

let result1 = Option.bind reverse stringOpt1
printfn "%A" result1
let result2 = Option.bind reverse stringOpt2
printfn "%A" result2

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

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

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