Lua:
Werken met YAML

Hoe te:

Lua heeft geen ingebouwde ondersteuning voor YAML, maar je kunt een bibliotheek zoals lyaml gebruiken. Installeer het met luarocks install lyaml. Hier is hoe je YAML kunt parsen:

local lyaml = require('lyaml')

-- Voorbeeld YAML-gegevens als een string
local yaml_data = [[
- name: John Doe
  age: 29
- name: Jane Smith
  age: 42
]]

-- YAML-string parsen naar Lua-tabel
local parsed_data = lyaml.load(yaml_data)

-- Gegevens benaderen
for i, person in ipairs(parsed_data) do
  print(person.name, person.age)
end

Voorbeelduitvoer:

John Doe 29
Jane Smith 42

Laten we nu wat YAML genereren vanuit een Lua-tabel:

local lyaml = require('lyaml')

-- Voorbeeld Lua-tabel
local people = {
  { name = "John Doe", age = 29 },
  { name = "Jane Smith", age = 42 }
}

-- YAML genereren vanuit Lua-tabel
local yaml_output = lyaml.dump(people)

print(yaml_output)

Voorbeeld YAML-uitvoer:

- age: 29
  name: John Doe
- age: 42
  name: Jane Smith

Diepgaand

YAML, wat staat voor “YAML Ain’t Markup Language”, kwam begin jaren 2000 op als een gebruiksvriendelijke standaard voor gegevensserialisatie. Het is minder uitgebreid dan XML en JSON, wat het populair maakt voor configuratiebestanden. Alternatieven zijn JSON, XML en TOML. Lua-implementatie is voornamelijk afhankelijk van externe bibliotheken zoals lyaml, die libYAML gebruikt voor het parsen en uitvoeren van YAML. Wanneer je YAML met Lua gebruikt, onthoud dan dat tabellen geen inherente volgorde hebben, dus lijsten in YAML worden arrays, maar woordenboeken (sleutel-waardeparen) behouden mogelijk niet hun volgorde.

Zie Ook