Module: Bugno::Encoding

Defined in:
lib/bugno/encoding/encoder.rb,
lib/bugno/encoding/encoding.rb

Defined Under Namespace

Classes: Encoder

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.encoding_classObject

Returns the value of attribute encoding_class.



6
7
8
# File 'lib/bugno/encoding/encoding.rb', line 6

def encoding_class
  @encoding_class
end

Class Method Details

.encode(object) ⇒ Object



19
20
21
22
23
24
25
# File 'lib/bugno/encoding/encoding.rb', line 19

def self.encode(object)
  can_be_encoded = object.is_a?(String) || object.is_a?(Symbol)

  return object unless can_be_encoded

  encoding_class.new(object).encode
end

.setupObject



9
10
11
12
13
14
15
16
17
# File 'lib/bugno/encoding/encoding.rb', line 9

def self.setup
  if String.instance_methods.include?(:encode)
    require 'bugno/encoding/encoder'
    self.encoding_class = Bugno::Encoding::Encoder
  else
    require 'bugno/encoding/legacy_encoder'
    self.encoding_class = Bugno::Encoding::LegacyEncoder
  end
end