Ccurseforge
(LibSata) Safe’s Table Library

(LibSata) Safe’s Table Library

Библиотека для работы с таблицами в виде связанных списков, поддерживающая вставку, удаление и перебор объектов в Rift.

Автор: GrandT_ Тип: Аддон Категории: АддоныБиблиотеки Загрузок: 65 428 Просмотров: 0 Обновлён: 08.09.2026

Библиотека для работы с таблицами, реализованными в виде связанных списков.

Описание

Данная библиотека предоставляет функции и методы для управления связанными списками. Она предназначена для работы с неиндексированными таблицами, оптимальными для сценариев типа «первым пришёл — первым ушёл» (FIFO) или «последним пришёл — первым ушёл» (LIFO), например, для стеков или систем кэширования.

Библиотека достаточно гибкая и позволяет быстро вставлять элементы в отсортированном виде, используя индексацию по позициям, например, «A», «B»… «Z» и т.п., что облегчает вставку новых записей в определённые подтаблицы. Однако из-за отсутствия прямого доступа к файловому вводу-выводу в Rift не рекомендуется использовать её для работы с большими базами данных.

Переменные, возвращаемые функциями

  • Table — таблица LibSata.
  • Object — объект таблицы.
  • Data — данные, хранящиеся в объекте; могут иметь любой тип, включая пользовательские.

Команды LibSata

  • Table = LibSata:Create()
    Создаёт новую базовую таблицу.
  • for Object, Data in LibSata.EachIn(Table) do end
    Итерирует по таблице с помощью цикла Lua for do end. Для более естественного перебора можно использовать локальную переменную local each = LibSata.EachIn.

Создание объектов таблицы

  • Object = Table:Add(Data)
    Создаёт новый объект и добавляет его в конец таблицы.
  • Object = Table:InsertFirst(Data)
    Создаёт новый объект и вставляет его в начало таблицы.
  • Object = Table:InsertBefore(Object, Data)
    Создаёт новый объект и вставляет его перед указанным объектом таблицы.
  • Object = Table:InsertAfter(Object, Data)
    Создаёт новый объект и вставляет его после указанного объекта таблицы.

Получение объектов таблицы

  • Object, Data = Table:First()
    Возвращает первый объект таблицы и его данные.
  • Object, Data = Table:Last()
    Возвращает последний объект таблицы и его данные.
  • Object, Data = Table:After(Object)
    Возвращает следующий объект после указанного или nil, если объект последний.
  • Object, Data = Table:Before(Object)
    Возвращает предыдущий объект перед указанным или nil, если объект первый.

Управление таблицей

  • Data = Table:Remove(Object)
    Удаляет указанный объект из таблицы и возвращает его данные.
  • Data = Table:RemoveFirst()
    Удаляет первый объект таблицы и возвращает его данные.
  • Data = Table:RemoveLast()
    Удаляет последний объект таблицы и возвращает его данные.
  • Number = Table:Count()
    Возвращает количество объектов в таблице.
  • nil = Table:Clear()
    Очищает все объекты таблицы, оставляя саму таблицу существующей.
  • nil = Table:Delete()
    Удаляет таблицу из памяти, очищая все её объекты. Внешние ссылки на объекты или таблицу нужно установить в nil.
Полезная информация

Частые вопросы

Короткие ответы по установке, совместимости и возможностям проекта.

Что такое таблица в библиотеке LibSata?

Таблица — это структура данных в виде связанного списка, состоящая из объектов, каждый из которых содержит данные.

Как добавить новый элемент в таблицу?

Для добавления элемента используется метод Table:Add(Data), который помещает новый объект в конец таблицы.

Как получить первый и последний объект таблицы?

Методы Table:First() и Table:Last() возвращают соответственно первый и последний объект таблицы с их данными.

Можно ли удалить объект из таблицы?

Да, метод Table:Remove(Object) удаляет указанный объект и возвращает его данные.

Как полностью удалить таблицу из памяти?

Для этого используется метод Table:Delete(), который очищает все объекты и удаляет таблицу. Внешние ссылки при этом нужно обнулить вручную.

Центр загрузок

Доступные версии

Выберите подходящую версию игры и скачайте нужный выпуск.

0.0.8

SafesTableLib-r4.zip

Скачать5.08 KB
Релиз
Версии
2.3
Загрузки35 899
Добавлен