Spec-Zone.ru › Pony

HashSet[A: A, H: HashFunction[A!] val]

[Source]

Множество, построенное на основе HashMap. Реализовано как отображение псевдонима типа на сам себя

class ref HashSet[A: A, H: HashFunction[A!] val] is
  Comparable[HashSet[A, H] box] ref

Реализует

  • Comparable[HashSet[A, H] box] ref

Конструкторы

create

[Source]

По умолчанию предварительно выделяет 8 элементов.

new ref create(
  prealloc: USize val = 8)
: HashSet[A, H] ref^

Параметры

  • prealloc: USize val = 8

Возвращает

  • HashSet[A, H] ref^

Публичные функции

size

[Source]

Количество элементов в множестве.

fun box size()
: USize val

Возвращает

  • USize val

space

[Source]

Доступное место в множестве.

fun box space()
: USize val

Возвращает

  • USize val

apply

[Source]

Возвращает значение, если оно находится в множестве, иначе возникает ошибка.

fun box apply(
  value: box->A!)
: this->A ?

Параметры

  • value: box->A!

Возвращает

  • this->A ?

contains

[Source]

Проверяет, содержит ли множество значение.

fun box contains(
  value: box->A!)
: Bool val

Параметры

  • value: box->A!

Возвращает

  • Bool val

clear

[Source]

Удаляет все элементы из множества.

fun ref clear()
: None val

Возвращает

  • None val

set

[Source]

Добавляет значение в множество.

fun ref set(
  value: A)
: None val

Параметры

  • value: A

Возвращает

  • None val

unset

[Source]

Удаляет значение из множества.

fun ref unset(
  value: box->A!)
: None val

Параметры

  • value: box->A!

Возвращает

  • None val

extract

[Source]

Удаляет значение из множества и возвращает его. Вызывает ошибку, если значение не было в множестве.

fun ref extract(
  value: box->A!)
: A^ ?

Параметры

  • value: box->A!

Возвращает

  • A^ ?

union

[Source]

Добавляет все элементы из того множества в это множество.

fun ref union(
  that: Iterator[A^] ref)
: None val

Параметры

  • that: Iterator[A^] ref

Возвращает

  • None val

intersect[optional K: HashFunction[box->A!] val]

[Source]

Удаляет все элементы, которые не находятся в том множестве.

fun ref intersect[optional K: HashFunction[box->A!] val](
  that: HashSet[box->A!, K] ref)
: None val

Параметры

  • that: HashSet[box->A!, K] ref

Возвращает

  • None val

difference

[Source]

Удаляет элементы из этого множества, которые также находятся в том множестве. Добавляет элементы из того множества, которые не находятся в этом множестве.

fun ref difference(
  that: Iterator[A^] ref)
: None val

Параметры

  • that: Iterator[A^] ref

Возвращает

  • None val

remove

[Source]

Удаляет все элементы, которые находятся в том множестве.

fun ref remove(
  that: Iterator[box->A!] ref)
: None val

Параметры

  • that: Iterator[box->A!] ref

Возвращает

  • None val

add[optional K: HashFunction[this->A!] val]

[Source]

Добавляет значение в множество.

fun box add[optional K: HashFunction[this->A!] val](
  value: this->A!)
: HashSet[this->A!, K] ref^

Параметры

  • value: this->A!

Возвращает

  • HashSet[this->A!, K] ref^

sub[optional K: HashFunction[this->A!] val]

[Source]

Удаляет значение из множества.

fun box sub[optional K: HashFunction[this->A!] val](
  value: box->this->A!)
: HashSet[this->A!, K] ref^

Параметры

  • value: box->this->A!

Возвращает

  • HashSet[this->A!, K] ref^

op_or[optional K: HashFunction[this->A!] val]

[Source]

Создает множество с элементами как из этого, так и из того множества.

fun box op_or[optional K: HashFunction[this->A!] val](
  that: this->HashSet[A, H] ref)
: HashSet[this->A!, K] ref^

Параметры

  • that: this->HashSet[A, H] ref

Возвращает

  • HashSet[this->A!, K] ref^

op_and[optional K: HashFunction[this->A!] val]

[Source]

Создает множество с элементами, которые присутствуют как в этом, так и в том множестве.

fun box op_and[optional K: HashFunction[this->A!] val](
  that: this->HashSet[A, H] ref)
: HashSet[this->A!, K] ref^

Параметры

  • that: this->HashSet[A, H] ref

Возвращает

  • HashSet[this->A!, K] ref^

op_xor[optional K: HashFunction[this->A!] val]

[Source]

Создает множество с элементами, присутствующими в одном множестве, но не в обоих.

fun box op_xor[optional K: HashFunction[this->A!] val](
  that: this->HashSet[A, H] ref)
: HashSet[this->A!, K] ref^

Параметры

  • that: this->HashSet[A, H] ref

Возвращает

  • HashSet[this->A!, K] ref^

without[optional K: HashFunction[this->A!] val]

[Source]

Создает множество с элементами из этого множества, которые не находятся в том множестве.

fun box without[optional K: HashFunction[this->A!] val](
  that: this->HashSet[A, H] ref)
: HashSet[this->A!, K] ref^

Параметры

  • that: this->HashSet[A, H] ref

Возвращает

  • HashSet[this->A!, K] ref^

clone[optional K: HashFunction[this->A!] val]

[Source]

Создаёт клон. Тип элемента может отличаться из-за алиасирования и адаптации точки зрения.

fun box clone[optional K: HashFunction[this->A!] val]()
: HashSet[this->A!, K] ref^

Возвращает

  • HashSet[this->A!, K] ref^

eq

[Source]

Возвращает true, если множества содержат одинаковые элементы.

fun box eq(
  that: HashSet[A, H] box)
: Bool val

Параметры

  • that: HashSet[A, H] box

Возвращает

  • Bool val

ne

[Source]

Возвращает false, если множества содержат одинаковые элементы.

fun box ne(
  that: HashSet[A, H] box)
: Bool val

Параметры

  • that: HashSet[A, H] box

Возвращает

  • Bool val

lt

[Source]

Возвращает true, если каждый элемент этого множества также находится в том множестве, и это множество содержит меньше элементов, чем то множество.

fun box lt(
  that: HashSet[A, H] box)
: Bool val

Параметры

  • that: HashSet[A, H] box

Возвращает

  • Bool val

le

[Source]

Возвращает true, если каждый элемент этого множества также находится в том множестве.

fun box le(
  that: HashSet[A, H] box)
: Bool val

Параметры

  • that: HashSet[A, H] box

Возвращает

  • Bool val

gt

[Source]

Возвращает true, если каждый элемент того множества также находится в этом множестве, и это множество содержит больше элементов, чем то множество.

fun box gt(
  that: HashSet[A, H] box)
: Bool val

Параметры

  • that: HashSet[A, H] box

Возвращает

  • Bool val

ge

[Source]

Возвращает true, если каждый элемент того множества также находится в этом множестве.

fun box ge(
  that: HashSet[A, H] box)
: Bool val

Параметры

  • that: HashSet[A, H] box

Возвращает

  • Bool val

next_index

[Source]

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

fun box next_index(
  prev: USize val = call)
: USize val ?

Параметры

  • prev: USize val = call

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

  • USize val ?

index

[Source]

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

fun box index(
  i: USize val)
: this->A ?

Параметры

  • i: USize val

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

  • this->A ?

values

[Source]

Возвращает итератор по значениям.

fun box values()
: SetValues[A, H, this->HashSet[A, H] ref] ref^

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

  • SetValues[A, H, this->HashSet[A, H] ref] ref^

compare

[Source]

fun box compare(
  that: HashSet[A, H] box)
: (Less val | Equal val | Greater val)

Параметры

  • that: HashSet[A, H] box

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

  • (Less val | Equal val | Greater val)

© 2016-2020, The Pony Developers
© 2014-2015, Causality Ltd.
Licensed under the BSD 2-Clause License.
https://stdlib.ponylang.io/collections-HashSet

Spec-Zone.ru

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