Module: Packable

Defined in:
lib/packable/mixin.rb,
lib/packable/packers.rb,
lib/packable/extensions/io.rb,
lib/packable/extensions/proc.rb,
lib/packable/extensions/array.rb,
lib/packable/extensions/float.rb,
lib/packable/extensions/object.rb,
lib/packable/extensions/string.rb,
lib/packable/extensions/integer.rb

Defined Under Namespace

Modules: ClassMethods, Extensions, PackersClassMethod Classes: FilterCapture, Packers

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object

:nodoc:



6
7
8
9
10
11
12
13
# File 'lib/packable/mixin.rb', line 6

def self.included(base) #:nodoc:
  base.class_eval do
    class << self 
      include PackersClassMethod
      include ClassMethods
    end
  end
end

Instance Method Details

#pack(options = :default) ⇒ Object

options can be a Hash, a shortcut (Symbol) or a String (old-style)



16
17
18
19
# File 'lib/packable/mixin.rb', line 16

def pack(options = :default)
  return [self].pack(options) if options.is_a? String
  (StringIO.new.packed << [self, options]).string
end