Захотелось объявить константу для использования в паттерн матчинге в том числе:
let constant1 = -1
let constant2 = -2
match x with
| constant1 -> ...
| constant2 -> ...
С разбегу не вышло, выходит что constant1 внутри match — местячковый идентификатор. Что посоветуете кроме такого варианта:
match x with
| v when v = constant1 -> ...
| v when v = constant2 -> ...
Что посоветуете кроме такого варианта...
[<Literal>]?
Здравствуйте, Qbit86, Вы писали:
Q>Что посоветуете кроме такого варианта...
Q>[<Literal>]?
Благодарю
Здравствуйте, samius, Вы писали:
S>С разбегу не вышло, выходит что constant1 внутри match — местячковый идентификатор. Что посоветуете кроме такого варианта:
А вот в Scala можно в паттернах использовать внешние переменные, если взять их в обратные апострофы:
def Foo(x : Int, y : Int) : Boolean = x match {
case `y` => true
case _ => false
}
По-моему, очень полезная фича.