Method: Titlekit::SRT.import

Defined in:
lib/titlekit/parsers/srt.rb

.import(string) ⇒ Array<Hash>

Parses the supplied string and builds the resulting subtitles array.

Parameters:

  • string (String)

    proper UTF-8 SRT file content

Returns:

  • (Array<Hash>)

    the imported subtitles



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/titlekit/parsers/srt.rb', line 40

def self.import(string)
  Treetop.load(File.join(__dir__, 'srt'))
  parser = SRTParser.new
  syntax_tree = parser.parse(string)

  if syntax_tree
    return syntax_tree.build
  else
    failure = "failure_index #{parser.failure_index}\n"
    failure += "failure_line #{parser.failure_line}\n"
    failure += "failure_column #{parser.failure_column}\n"
    failure += "failure_reason #{parser.failure_reason}\n"

    fail failure
  end
end