def flush(o)
      @hooks.keys.each do |type|
        next unless Splib.type_of?(o, type)
        @hooks[type].each_pair do |key, objects|
          if(key == :procs)
            objects.each do |pr|
              if(@serial)
                pr.call(o)
              else
                @pool.process{ pr.call(o) }
              end
            end
          else
            objects.each do |h|
              if(h[:req].call(o))
                if(@serial)
                  h[:object].send(h[:method], o)
                else
                  @pool.process{ h[:object].send(h[:method], o) }
                end
              end
            end
          end
        end
      end
      nil
    end
def flush(o)
      @hooks.keys.each do |type|
        next unless Splib.type_of?(o, type)
        @hooks[type].each_pair do |key, objects|
          if(key == :procs)
            objects.each do |pr|
              if(@serial)
                pr.call(o)
              else
                @pool.process{ pr.call(o) }
              end
            end
          else
            objects.each do |h|
              if(h[:req].call(o))
                if(@serial)
                  h[:object].send(h[:method], o)
                else
                  @pool.process{ h[:object].send(h[:method], o) }
                end
              end
            end
          end
        end
      end
      nil
    end
o:: Object to flush
 Applies object to all matching hooks