Heap.Tuple

Объявляет поле-кортеж (tuple) - массив фиксированной длины с заданными типами элементов на каждой позиции.

Применение / сигнатура

import { Heap } from '@app/heap'
Heap.Tuple(elementsSchema, options)

Аргументы

  • elementsSchema: HeapSchema[] *
    Список схем для соответствующх элементов на каждой позиции кортежа. Это может быть любой поддерживаемый тип поля heap-таблицы - простой или сложный.

    Схемы с модификаторами Heap.Optional и Heap.NonRequired не поддерживаются и приведут к рантайм-ошибке, т.к. не имеют смысла в данном контексте.

  • options: {default}
    Объект с дополнительными необязательными параметрами поля.

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

JSON-схема для массива с фиксированной длиной и типами элементов.

Примеры

Моделирование единицы веса с помощью Heap.Tuple
const weightSchema = Heap.Tuple([
  Heap.Number({ minimum: 0 }),
  Heap.Union([
    Heap.Literal('gram'),
    Heap.Literal('kilogram'),
    Heap.Literal('ton'),
  ]),
])
const scales = Heap.Table('scales', {
  minWeight: weightSchema,
  maxWeight: weightSchema,
})
await scales.create(ctx, {
  minWeight: [10, 'gram'],
  maxWeight: [100, 'kilogram'],
})

❤️ Made with love on Chatium

ООО "Чатиум"

Информация о компании