Class: M3u8::ByteRange

Inherits:
Object
  • Object
show all
Defined in:
lib/m3u8/byte_range.rb

Overview

ByteRange represents sub range of a resource

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ ByteRange

Returns a new instance of ByteRange.



7
8
9
10
11
# File 'lib/m3u8/byte_range.rb', line 7

def initialize(params = {})
  params.each do |key, value|
    instance_variable_set("@#{key}", value)
  end
end

Instance Attribute Details

#lengthObject

Returns the value of attribute length.



5
6
7
# File 'lib/m3u8/byte_range.rb', line 5

def length
  @length
end

#startObject

Returns the value of attribute start.



5
6
7
# File 'lib/m3u8/byte_range.rb', line 5

def start
  @start
end

Class Method Details

.parse(text) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/m3u8/byte_range.rb', line 13

def self.parse(text)
  values = text.split '@'
  length_value = values[0].to_i
  start_value = values[1].to_i unless values[1].nil?
  options = { length: length_value, start: start_value }
  ByteRange.new options
end

Instance Method Details

#to_sObject



21
22
23
# File 'lib/m3u8/byte_range.rb', line 21

def to_s
  "#{length}#{start_format}"
end