An attribute created by #attr, #attr_reader, #attr_writer or #attr_accessor
Methods
- #
- A
- D
- M
- N
Constants
MARSHAL_VERSION | = | 3 |
|
Attributes
[RW] | rw | Is the attribute readable ('R'), writable ('W') or both ('RW')? |
Class Public methods
new(text, name, rw, comment, singleton = false)
Link
Creates a new Attr with body text
,
name
, read/write status rw
and
comment
. singleton
marks this as a class
attribute.
Instance Public methods
==(other)
Link
Attributes are equal when their names, singleton and rw are identical
add_alias(an_alias, context)
Link
Add an_alias
as an attribute in context
.
# File lib/rdoc/attr.rb, line 45 def add_alias(an_alias, context) new_attr = self.class.new(self.text, an_alias.new_name, self.rw, self.comment, self.singleton) new_attr.record_location an_alias.file new_attr.visibility = self.visibility new_attr.is_alias_for = self @aliases << new_attr context.add_attribute new_attr new_attr end
definition()
Link
Returns attr_reader, attr_writer or attr_accessor as appropriate.
marshal_dump()
Link
Dumps this Attr for use by ri. See also marshal_load
marshal_load(array)
Link
# File lib/rdoc/attr.rb, line 123 def marshal_load array initialize_visibility @aliases = [] @parent = nil @parent_name = nil @parent_class = nil @section = nil @file = nil version = array[0] @name = array[1] @full_name = array[2] @rw = array[3] @visibility = array[4] @comment = array[5] @singleton = array[6] || false # MARSHAL_VERSION == 0 # 7 handled below @parent_name = array[8] @parent_class = array[9] @section_title = array[10] @file = RDoc::TopLevel.new array[7] if version > 1 @parent_name ||= @full_name.split('#', 2).first end