--- !ruby/object:RI::ClassDescription 
attributes: []

class_methods: 
- !ruby/object:RI::MethodSummary 
  name: new
comment: 
- !ruby/struct:SM::Flow::P 
  body: "OpenStruct allows you to create data objects and set arbitrary attributes. For example:"
- !ruby/struct:SM::Flow::VERB 
  body: "  require 'ostruct'\n\n  record = OpenStruct.new\n  record.name    = &quot;John Smith&quot;\n  record.age     = 70\n  record.pension = 300\n\n  puts record.name     # -&gt; &quot;John Smith&quot;\n  puts record.address  # -&gt; nil\n"
- !ruby/struct:SM::Flow::P 
  body: It is like a hash with a different way to access the data. In fact, it is implemented with a hash, and you can initialize it with one.
- !ruby/struct:SM::Flow::VERB 
  body: "  hash = { &quot;country&quot; =&gt; &quot;Australia&quot;, :population =&gt; 20_000_000 }\n  data = OpenStruct.new(hash)\n\n  p data        # -&gt; &lt;OpenStruct country=&quot;Australia&quot; population=20000000&gt;\n"
constants: []

full_name: OpenStruct
includes: []

instance_methods: 
- !ruby/object:RI::MethodSummary 
  name: ==
- !ruby/object:RI::MethodSummary 
  name: delete_field
- !ruby/object:RI::MethodSummary 
  name: initialize_copy
- !ruby/object:RI::MethodSummary 
  name: inspect
- !ruby/object:RI::MethodSummary 
  name: marshal_dump
- !ruby/object:RI::MethodSummary 
  name: marshal_load
- !ruby/object:RI::MethodSummary 
  name: new_ostruct_member
- !ruby/object:RI::MethodSummary 
  name: to_s
name: OpenStruct
superclass: Object
