# File lib/ruote/exp/fe_set.rb, line 92 def apply opts = { :escape => attribute(:escape) } value = lookup_val(opts) # a nil value is totally OK if var_key = has_attribute(:v, :var, :variable) set_v(attribute(var_key), value) elsif field_key = has_attribute(:f, :fld, :field) set_f(attribute(field_key), value) elsif value == nil && kv = expand_atts(opts).find { |k, v| k != 'escape' } set_vf(*kv) else raise ArgumentError.new( "missing a variable or field target in #{tree.inspect}") end reply_to_parent(h.applied_workitem) end