Lua:
Travailler avec TOML

Comment faire :

Tout d’abord, assurez-vous que votre environnement Lua dispose d’un analyseur TOML. Nous utiliserons lua-toml pour cet exemple.

local toml = require("toml")

-- Analyser une chaîne TOML
local toml_data = [[
title = "Exemple TOML"

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

local data = toml.parse(toml_data)
print(data.title) -- "Exemple TOML"

-- Générer une chaîne TOML
local table_data = {
  title = "Exemple 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)

Exemple de sortie :

Exemple TOML

Exploration détaillée

TOML a été créé par Tom Preston-Werner en 2013 comme une alternative à d’autres langues de sérialisation de données comme XML et YAML, offrant un format plus direct pour représenter les données de configuration. Alors que JSON est omniprésent, sa syntaxe peut être fastidieuse pour les fichiers de config. TOML brille avec une syntaxe plus claire pour les humains, ressemblant aux fichiers .ini mais avec des capacités d’imbrication et des types de données.

Les alternatives à TOML incluent JSON, YAML et XML. Cependant, TOML est spécifiquement conçu pour la configuration et est, de manière arguable, plus simple que YAML, plus lisible que JSON à des fins de configuration et moins verbeux que XML.

L’implémentation de la gestion TOML dans Lua nécessite généralement une bibliothèque tierce. La performance et les fonctionnalités peuvent varier, allant de l’analyse basique au support de sérialisation complet. Lorsque vous traitez avec de gros fichiers de configuration ou des opérations de lecture/écriture fréquentes, considérez la performance de la bibliothèque et sa conformité avec la dernière version de TOML.

Voir aussi