class EncoderTools::CLI::Subtitles::Base

Public Class Methods

parser(parser=nil) click to toggle source
# File lib/encoder-tools/cli/subtitles/base.rb, line 5
def self.parser(parser=nil)
  case parser
  when nil
    @parser || EncoderTools::Subtitles::Parser
  when :default
    @parser = EncoderTools::Subtitles::Parser
  when :relaxed
    @parser = EncoderTools::Subtitles::RelaxedParser
  when Class
    @parser = parser
  else
    raise ArgumentError, "unexpected parser type: #{parser.inspect}"
  end
end

Public Instance Methods

parse(text) click to toggle source
# File lib/encoder-tools/cli/subtitles/base.rb, line 24
def parse(text)
  EncoderTools::Subtitles::List.load(text, parser)
end
parser() click to toggle source
# File lib/encoder-tools/cli/subtitles/base.rb, line 20
def parser
  self.class.parser
end
read() click to toggle source
# File lib/encoder-tools/cli/subtitles/base.rb, line 28
def read
  parse(input.read)
end
write(result) click to toggle source
# File lib/encoder-tools/cli/subtitles/base.rb, line 32
def write(result)
  output << result.to_s
end