Class: Docscribe::InlineRewriter::Collector::AttrInsertion

Inherits:
Struct
  • Object
show all
Defined in:
lib/docscribe/inline_rewriter/collector.rb

Overview

One attribute macro call that Docscribe intends to document.

This corresponds to an ‘attr_reader`, `attr_writer`, or `attr_accessor` call in Ruby source.

Instance Attribute Summary collapse

Instance Attribute Details

#accessSymbol

Returns :r, :w, or :rw (reader/writer/accessor).

Returns:

  • (Symbol)

    :r, :w, or :rw (reader/writer/accessor)



57
# File 'lib/docscribe/inline_rewriter/collector.rb', line 57

AttrInsertion = Struct.new(:node, :scope, :visibility, :container, :access, :names)

#containerString

Returns container name, e.g. “MyModule::MyClass”.

Returns:

  • (String)

    container name, e.g. “MyModule::MyClass”



57
# File 'lib/docscribe/inline_rewriter/collector.rb', line 57

AttrInsertion = Struct.new(:node, :scope, :visibility, :container, :access, :names)

#namesArray<Symbol>

Returns attribute names.

Returns:

  • (Array<Symbol>)

    attribute names



57
# File 'lib/docscribe/inline_rewriter/collector.rb', line 57

AttrInsertion = Struct.new(:node, :scope, :visibility, :container, :access, :names)

#nodeParser::AST::Node

Returns the ‘:send` node (e.g. `attr_reader :name`).

Returns:

  • (Parser::AST::Node)

    the ‘:send` node (e.g. `attr_reader :name`)



57
# File 'lib/docscribe/inline_rewriter/collector.rb', line 57

AttrInsertion = Struct.new(:node, :scope, :visibility, :container, :access, :names)

#scopeSymbol

Returns :instance or :class (class when inside ‘class << self`).

Returns:

  • (Symbol)

    :instance or :class (class when inside ‘class << self`)



57
# File 'lib/docscribe/inline_rewriter/collector.rb', line 57

AttrInsertion = Struct.new(:node, :scope, :visibility, :container, :access, :names)

#visibilitySymbol

Returns :public, :protected, or :private.

Returns:

  • (Symbol)

    :public, :protected, or :private



57
# File 'lib/docscribe/inline_rewriter/collector.rb', line 57

AttrInsertion = Struct.new(:node, :scope, :visibility, :container, :access, :names)