webmcp
view framework/env/slot/use_temporary.lua @ 179:461e5353ffb1
Limit max depth of JSON documents to 50 (until a better implementation of json.export is available)
author | jbe |
---|---|
date | Sat Aug 02 00:38:25 2014 +0200 (2014-08-02) |
parents | 9fdfb27f8e67 |
children |
line source
1 --[[--
2 slot_content =
3 slot.use_temporary(
4 function()
5 ...
6 end
7 )
9 This function creates a temporary slot and executes code in a way that slot.put(...) and other functions will write into the temporary slot. Afterwards the contents of the temporary slot are returned as a single string.
11 --]]--
13 function slot.use_temporary(block)
14 local old_slot = slot._active_slot
15 local temp_slot_reference = {} -- just a unique reference
16 slot._active_slot = temp_slot_reference
17 block()
18 slot._active_slot = old_slot
19 local result = slot.get_content(temp_slot_reference)
20 slot.reset(temp_slot_reference)
21 return result
22 end