Lua:
עבודה עם TOML

איך לעשות:

ראשית, וודאו שסביבת ה-Lua שלכם כוללת מנתח TOML. בדוגמה זו נשתמש ב-lua-toml.

local toml = require("toml")

-- ניתוח מחרוזת TOML
local toml_data = [[
title = "דוגמת TOML"

[owner]
name = "טום פרסטון-וורנר"
dob = 1979-05-27T07:32:00Z
]]

local data = toml.parse(toml_data)
print(data.title) -- "דוגמת TOML"

-- ייצור מחרוזת TOML
local table_data = {
  title = "דוגמת TOML",
  owner = {
    name = "טום פרסטון-וורנר",
    dob = os.time({year=1979, month=5, day=27, hour=7, min=32})
  }
}

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

פלט לדוגמה:

דוגמת TOML

ניתוח מעמיק

TOML נוצר על ידי טום פרסטון-וורנר בשנת 2013 כחלופה לשפות סידור נתונים אחרות כמו XML ו-YAML, ומציע פורמט יותר פשוט לייצוג נתוני תצורה. בזמן ש-JJSON התפשט בכל מקום, התחביר שלו יכול להיות מסורבל עבור קבצי תצורה. TOML מזהיר עם תחביר ברור יותר לאנושי, הדומה לקבצי .ini אך עם יכולת לקינון וסוגי נתונים.

חלופות ל-TOML כוללות JSON, YAML, ו-XML. עם זאת, TOML מתוכנן במיוחד עבור תצורה והוא באופן טיעוני פשוט יותר מ-YAML, יותר קריא מ-JSON למטרות תצורה, ופחות ארוך מ-XML.

יישום של טיפול ב-TOML ב-Lua בדרך כלל דורש ספרייה חיצונית. הביצועים והתכונות יכולים להשתנות, החל מניתוח בסיסי ועד לתמיכה מלאה בסידור. כאשר מתמודדים עם קבצי תצורה גדולים או פעולות קריאה/כתיבה תכופות, שקלו את ביצועי הספרייה והתאמתה לגרסת TOML העדכנית ביותר.

ראו גם