summaryrefslogtreecommitdiff
path: root/examples/change-setting.lua
blob: 1c265458a0b2a14b5a03fc76e5c2495bbcf06516 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
-- examples/change-setting.lua
--
-- Demonstration of changing a setting in Clod
--
-- Copyright 2012 Daniel Silverstone <dsilvers@digital-scurf.org>
--

clod = require "clod"

local input_config = [[
project.name "jeff"
project.head "refs/heads/jeff"

other.thing "here"
]]

conf, err = clod.parse(input_config)
if not conf then
   error(err)
end

-- Change name (should not move)
conf.settings.project.name = "Clod"
-- Change head (should not move)
conf.settings.project.head = "refs/heads/master"
-- Add description (should appear after head)
conf.settings.project.description = "Demonstration of settings"
-- Remove other.thing (will also elide trailing blank line)
conf.settings.other.thing = nil

io.stdout:write(conf:serialise())