Class: Cborb::Decoding::Types::IndefiniteTextString

Inherits:
Type
  • Object
show all
Defined in:
lib/cborb/decoding/types/indefinite_text_string.rb

Overview

To represent major type: 3(indefinite-length)

Class Method Summary collapse

Class Method Details

.accept(im_data, type, value) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/cborb/decoding/types/indefinite_text_string.rb', line 14

def self.accept(im_data, type, value)
  if type == Cborb::Decoding::Types::TextString
    im_data.concat(value)
    Cborb::Decoding::State::CONTINUE
  elsif type == Cborb::Decoding::Types::Break
    im_data
  else
    raise Cborb::DecodingError, "Unexpected chunk for indefinite text string"
  end
end

.decode(state, additional_info) ⇒ Object



10
11
12
# File 'lib/cborb/decoding/types/indefinite_text_string.rb', line 10

def self.decode(state, additional_info)
  state.push_stack(self, String.new.force_encoding(::Encoding::UTF_8))
end

.indefinite?Boolean

Returns:

  • (Boolean)


6
7
8
# File 'lib/cborb/decoding/types/indefinite_text_string.rb', line 6

def self.indefinite?
  true
end