Sha256: 790d1f0eb6a21b60e23194dbe9febfa816dd500f027c69e57d6ea644a7cc3c4a

Contents?: true

Size: 719 Bytes

Versions: 1

Compression:

Stored size: 719 Bytes

Contents

class MessageBuilder
  
  def initialize
    @address = ""
    @tags = []
    @values = []
    @time = nil
  end
  
  def with_address( addr )
    @address = addr
    self
  end
  
  def with_float( float )
    with_arg( "f", float )
    self
  end
  
  def with_int( int )
    with_arg( "i", int )
    self
  end
  
  def with_string( string )
    with_arg( "s", string )
    self
  end
  
  def with_blob( blob )
    with_arg( "b", blob )
    self
  end
  
  def with_time( time )
    @time = time
  end
  
  def build
    message = OSC::Message.new( @address , @tags.join, *@values)
    message.time = @time
    message
  end
  
private

  def with_arg( tag, value )
    @tags << tag 
    @values << value 
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
aberant-osc-ruby-0.1.6 spec/builders/message_builder.rb