Class: YARD::RSpecExamples::ParserTrace

Inherits:
Object
  • Object
show all
Defined in:
lib/yard/rspec_examples/parser_trace.rb

Class Method Summary collapse

Class Method Details

.full_descriptionObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/yard/rspec_examples/parser_trace.rb', line 8

def self.full_description
  @stack.reverse.reduce("") do |result, o|
    case o.type
    when :string_literal
      description = o.source[1..-2]
      prefix = description =~ /^(#|\.|::)/ ? '' : ' '
      prefix + description + result
    when :var_ref
      "::#{o.path.first}#{result}"
    when :const_ref
      "::#{o.path.first}#{result}"
    else
      o.source + result
    end
  end.gsub(/^::/, '')
end

.stackObject



4
5
6
# File 'lib/yard/rspec_examples/parser_trace.rb', line 4

def self.stack
  @stack ||= []
end