Module: CardPrinter::Parser
- Defined in:
- lib/card_printer/parser.rb
Defined Under Namespace
Classes: Base, CsvParser, JsonLine, TrelloJsonExport
Class Method Summary
collapse
Class Method Details
.available_parsers ⇒ Object
10
11
12
|
# File 'lib/card_printer/parser.rb', line 10
def self.available_parsers
@parsers.keys
end
|
.default_parser ⇒ Object
14
15
16
|
# File 'lib/card_printer/parser.rb', line 14
def self.default_parser
'trello_json_export'
end
|
.parse(iostream, parser_type = default_parser) ⇒ Object
6
7
8
|
# File 'lib/card_printer/parser.rb', line 6
def self.parse(iostream, parser_type = default_parser)
parser_for(parser_type).call(iostream)
end
|
.parser_for(parser_type) ⇒ Object
18
19
20
21
|
# File 'lib/card_printer/parser.rb', line 18
def self.parser_for(parser_type)
parser_class = @parsers.fetch(parser_type)
->(iostream) { parser_class.new(iostream).parse }
end
|
.register_parser(name, klass) ⇒ Object
23
24
25
|
# File 'lib/card_printer/parser.rb', line 23
def self.register_parser(name, klass)
@parsers[name] = klass
end
|