Как вы реализуете эквивалент оператора С# explicit
в F #? Поддерживается ли это?
Как определить явный оператор в F #?
Ответ 1
Просто реализуйте статический член op_Explicit
, например
type SomeType() =
static member op_Explicit(source: SomeType) : int =
1
а затем вы можете использовать соответствующий оператор преобразования # F #, например
SomeType() |> int
вы можете увидеть, как это работает, отметив ограничение статического члена на сигнатуру типа int
^a -> int when ^a : (static member op_Explicit : ^a -> int)