# File lib/ftw/websocket/parser.rb, line 77
  def feed(data)
    @buffer << data
    while have?(@need)
      value = send(@state)
      # Return if our state yields a value.
      yield value if !value.nil? and block_given?
    end
    return nil
  end