#pragma once
#include <trantor/utils/NonCopyable.h>
#include <memory>
namespace trantor
{
class TRANTOR_EXPORT AsyncStream : public NonCopyable
{
  public:
    virtual ~AsyncStream() = default;
    virtual bool send(const char *data, size_t len) = 0;
    bool send(const std::string &data)
    {
        return send(data.data(), data.length());
    }
    virtual void close() = 0;
};
using AsyncStreamPtr = std::unique_ptr<AsyncStream>;
}  