Method: Fauxsql::DSL#list
- Defined in:
- lib/fauxsql/dsl.rb
#list(attribute_name, options = {}) ⇒ Object
DSL method to define a named Fauxsql list
calling with ‘squad_members’ is like writing:
def squad_members
get_fauxsql_list(:squad_members)
end
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/fauxsql/dsl.rb', line 43 def list(attribute_name, ={}) [attribute_name] = () class_eval " def \#{attribute_name}\n get_fauxsql_list(:\#{attribute_name})\n end\n", __FILE__, __LINE__ if [:nest] class_eval " def \#{attribute_name}=(attrs)\n \#{attribute_name}.clear\n attrs.each do |index, vals|\n vals = Fauxsql::DSL.normalize_nested_vals!(vals)\n record = \#{attribute_name}.get_nested_record(vals)\n \#{attribute_name} << record if record unless vals[:_delete]\n end\n end\n", __FILE__, __LINE__ end end |