Skip to content

Compiler v2.1.1

Compare
Choose a tag to compare
@Victor-Y-Fadeev Victor-Y-Fadeev released this 17 Aug 22:23
· 1734 commits to master since this release
018e3cf

Исправления:

  • Реализована расширяемость структуры workspase, путем замены статических массивов на вектора строк
  • Конструкции t_create_direct и t_exit_direct удалены, как нерабочие
  • Удалена функция fread, из-за сложности ее поддержки в виртуальной машине
  • Добавлены проверки index != SIZE_MAX в функции быстрого доступа, с постфиксом by_index
  • Оптимизирована логика добавления строковых ключей в ассоциативный массив
  • Исправлена обработка пустых ключей в map_last_read
  • Исправлена очистка памяти в strings_remove

Улучшения:

  • Добавлена функция быстрого получения длины строки в strings.h:
size_t strings_get_length(const strings *const vec, const size_t index);
  • Добавлены функции удаления записи в hash.h:
int hash_remove(hash *const hs, const item_t key);
int hash_remove_by_index(hash *const hs, const size_t index);
  • Добавлены функции получения индекса в map.h:
size_t map_get_index(map *const as, const char *const key);
size_t map_get_index_by_utf8(map *const as, const char32_t *const key);
size_t map_get_index_by_io(map *const as, universal_io *const io, char32_t *const last);