Lua:
Praca z TOML

Jak to zrobić:

Po pierwsze, upewnij się, że Twoje środowisko Lua ma parser TOML. Użyjemy w tym przykładzie lua-toml.

local toml = require("toml")

-- Analiza łańcucha TOML
local toml_data = [[
title = "Przykład TOML"

[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00Z
]]

local data = toml.parse(toml_data)
print(data.title) -- "Przykład TOML"

-- Generowanie łańcucha TOML
local table_data = {
  title = "Przykład TOML",
  owner = {
    name = "Tom Preston-Werner",
    dob = os.time({year=1979, month=5, day=27, hour=7, min=32})
  }
}

local toml_string = toml.encode(table_data)
print(toml_string)

Przykładowe wyniki:

Przykład TOML

Pogłębiona analiza

TOML został stworzony przez Toma Preston-Wernera w 2013 roku jako alternatywa dla innych języków serializacji danych, takich jak XML i YAML, oferując prostszy format do reprezentowania danych konfiguracyjnych. Chociaż JSON jest wszechobecny, jego składnia może być uciążliwa dla plików konfiguracyjnych. TOML wyróżnia się czytelniejszą składnią dla ludzi, przypominającą pliki .ini, ale z możliwościami zagnieżdżania i typami danych.

Alternatywy dla TOML to JSON, YAML i XML. Jednak TOML jest specjalnie zaprojektowany do konfiguracji i można argumentować, że jest prostszy niż YAML, bardziej czytelny niż JSON do celów konfiguracyjnych i mniej rozwlekły niż XML.

Implementacja obsługi TOML w Lua zazwyczaj wymaga biblioteki stron trzecich. Wydajność i funkcje mogą się różnić, od podstawowej analizy po pełne wsparcie serializacji. Podczas pracy z dużymi plikami konfiguracyjnymi lub częstymi operacjami odczytu/zapisu należy rozważyć wydajność biblioteki i zgodność z najnowszą wersją TOML.

Zobacz także