webmcp

annotate framework/env/slot/use_temporary.lua @ 405:c5f9a1b2f225

Updated year of copyright notice
author jbe
date Wed Jan 06 02:54:45 2016 +0100 (2016-01-06)
parents 9fdfb27f8e67
children
rev   line source
jbe/bsw@0 1 --[[--
jbe/bsw@0 2 slot_content =
jbe/bsw@0 3 slot.use_temporary(
jbe/bsw@0 4 function()
jbe/bsw@0 5 ...
jbe/bsw@0 6 end
jbe/bsw@0 7 )
jbe/bsw@0 8
jbe/bsw@0 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.
jbe/bsw@0 10
jbe/bsw@0 11 --]]--
jbe/bsw@0 12
jbe/bsw@0 13 function slot.use_temporary(block)
jbe/bsw@0 14 local old_slot = slot._active_slot
jbe/bsw@0 15 local temp_slot_reference = {} -- just a unique reference
jbe/bsw@0 16 slot._active_slot = temp_slot_reference
jbe/bsw@0 17 block()
jbe/bsw@0 18 slot._active_slot = old_slot
jbe/bsw@0 19 local result = slot.get_content(temp_slot_reference)
jbe/bsw@0 20 slot.reset(temp_slot_reference)
jbe/bsw@0 21 return result
jbe/bsw@0 22 end

Impressum / About Us