#pragma once

namespace tinyrpc {

enum ErrorCode {
    ERROR_PEER_CLOSED, // connect when peer close
    ERROR_FAILED_CONNECT, // failed to connection peer host
    ERROR_FAILED_GET_REPLY, // failed to get server reply
    ERROR_FAILED_DESERIALIZE, // deserialize failed
    ERROR_FAILED_SERIALIZE, // serialize failed

    ERROR_FAILED_ENCODE, // encode failed
    ERROR_FAILED_DECODE, // decode failed

    ERROR_RPC_CALL_TIMEOUT, // call rpc timeout

    ERROR_SERVICE_NOT_FOUND, // not found service name

    ERROR_METHOD_NOT_FOUND, // not found method

    ERROR_PARSE_SERVICE_NAME, // not found service name
    ERROR_ASYNC_RPC_CALL_SINGLE_IOTHREAD, // not supoort async rpc call when only have single iothread

};

}