# File lib/ruote/exp/flowexpression.rb, line 435 def launch_sub (pos, subtree, opts={}) i = h.fei.dup i['sub_wfid'] = get_next_sub_wfid i['expid'] = pos #p '=== launch_sub ===' #p [ :launcher, h.fei['expid'], h.fei['sub_wfid'], h.fei['wfid'] ] #p [ :launched, i['expid'], i['sub_wfid'], i['wfid'] ] forget = opts[:forget] register_child(i) unless forget variables = ( forget ? compile_variables : {} ).merge!(opts[:variables] || {}) @context.storage.put_msg( 'launch', 'fei' => i, 'parent_id' => forget ? nil : h.fei, 'tree' => subtree, 'workitem' => opts[:workitem] || h.applied_workitem, 'variables' => variables, 'forgotten' => forget) end