1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
pub use api::naming::error as naming; pub use rosxmlrpc::error as rosxmlrpc; pub use tcpros::error as tcpros; error_chain! { foreign_links { Io(::std::io::Error); Nix(::nix::Error); FromUTF8(::std::string::FromUtf8Error); } links { XmlRpc(rosxmlrpc::Error, rosxmlrpc::ErrorKind); Tcpros(tcpros::Error, tcpros::ErrorKind); Naming(naming::Error, naming::ErrorKind); Master(self::master::Error, self::master::ErrorKind); } errors { Duplicate(t: String) { description("Could not add duplicate") display("Could not add duplicate {}", t) } TimeoutError } } pub mod api { error_chain! { errors { SystemFail(message: String) { description("Failure to handle API call") display("Failure to handle API call: {}", message) } BadData(message: String) { description("Bad parameters provided in API call") display("Bad parameters provided in API call: {}", message) } } } } pub mod master { error_chain! { links { XmlRpc(super::rosxmlrpc::Error, super::rosxmlrpc::ErrorKind); Api(::error::api::Error, ::error::api::ErrorKind); } } }