--- !ruby/object:RI::MethodDescription 
aliases: []

block_params: 
comment: 
- !ruby/struct:SM::Flow::P 
  body: Defines a named attribute for this module, where the name is <em>symbol.</em><tt>id2name</tt>, creating an instance variable (<tt>@name</tt>) and a corresponding access method to read it. If the optional <em>writable</em> argument is <tt>true</tt>, also creates a method called <tt>name=</tt> to set the attribute.
- !ruby/struct:SM::Flow::VERB 
  body: "   module Mod\n     attr  :size, true\n   end\n"
- !ruby/struct:SM::Flow::P 
  body: <em>is equivalent to:</em>
- !ruby/struct:SM::Flow::VERB 
  body: "   module Mod\n     def size\n       @size\n     end\n     def size=(val)\n       @size = val\n     end\n   end\n"
full_name: Module#attr
is_singleton: false
name: attr
params: |
  attr(symbol, writable=false)    => nil

visibility: public
