Spec-Zone.ru › Elixir 1.7

Диапазон

Определяет диапазон.

Диапазон представляет собой набор дискретных значений, где первое и последнее значения являются целыми числами.

Диапазоны могут быть либо возрастающими (first <= last) либо убывающими (first > last). Диапазоны всегда являются включительно.

Диапазон представлен внутри как структура. Однако наиболее распространённый способ создания и сопоставления с диапазонами - это макрос ../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)

Создаёт новый диапазон

Типы

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()

Создаёт новый диапазон.

© 2012 Plataformatec
Licensed under the Apache License, Version 2.0.
https://hexdocs.pm/elixir/1.7.4/Range.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API