Class: ReferenceExtractor::Internal::Parsers::Factory

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/reference_extractor/internal/parsers/factory.rb

Instance Method Summary collapse

Constructor Details

#initializeFactory

Returns a new instance of Factory.



22
23
24
25
26
# File 'lib/reference_extractor/internal/parsers/factory.rb', line 22

def initialize
  @ruby_parser = nil
  @erb_parser = nil
  @erb_parser_class = nil
end

Instance Method Details

#erb_parser_classObject



37
38
39
# File 'lib/reference_extractor/internal/parsers/factory.rb', line 37

def erb_parser_class
  @erb_parser_class ||= Erb
end

#erb_parser_class=(klass) ⇒ Object



41
42
43
44
# File 'lib/reference_extractor/internal/parsers/factory.rb', line 41

def erb_parser_class=(klass)
  @erb_parser_class = klass
  @erb_parser = nil
end

#for_path(path) ⇒ Object



28
29
30
31
32
33
34
35
# File 'lib/reference_extractor/internal/parsers/factory.rb', line 28

def for_path(path)
  case path
  when RUBY_REGEX
    @ruby_parser ||= Ruby.new
  when ERB_REGEX
    @erb_parser ||= erb_parser_class.new
  end
end