Диапазон
Определяет диапазон.
Диапазон представляет собой дискретное число значений, где первое и последнее значения являются целыми числами.
Диапазоны могут быть либо возрастающими (первое <= последнее), либо убывающими (первое > последнее). Диапазоны всегда включают оба конца.
Диапазон представлен внутри как структура. Однако наиболее распространённый способ создания и сопоставления диапазонов - с помощью макроса ../2, автоматически импортируемого из Kernel:
iex> range = 1..3 1..3 iex> first..last = range iex> first 1 iex> last 3
Диапазон реализует протокол Enumerable, что означает, что доступны все функции модуля Enum:
iex> range = 1..10 1..10 iex> Enum.reduce(range, 0, fn i, acc -> i * i + acc end) 385 iex> Enum.count(range) 10 iex> Enum.member?(range, 11) false iex> Enum.member?(range, 8) true
Краткое описание
Типы
- t()
- t(first, last)
Функции
- new(first, last)
-
Создаёт новый диапазон
- range?(term)
-
Возвращает
true, если заданныйtermявляется допустимым диапазоном
Типы
t()
t() :: %Range{first: integer, last: integer} t(first, last)
t(first, last) :: %Range{first: first, last: last} Функции
new(first, last)
new(integer, integer) :: t
Создаёт новый диапазон.
range?(term)
range?(term) :: boolean
Возвращает true , если заданный term является допустимым диапазоном.
Примеры
iex> Range.range?(1..3) true iex> Range.range?(0) false
© 2012 Plataformatec
Licensed under the Apache License, Version 2.0.
https://hexdocs.pm/elixir/1.3.4/Range.html