pub struct ErrorMessageBody {
pub typ: String,
pub code: i32,
pub text: String,
}
Expand description
ErrorMessageBody
represents the error response body.
Fields§
§typ: String
Message type.
code: i32
Error code, if an error occurred.
text: String
Error message, if an error occurred.
Implementations§
Source§impl ErrorMessageBody
impl ErrorMessageBody
pub fn new(code: i32, text: impl Into<String>) -> Self
Sourcepub fn from_error(err: Error) -> Self
pub fn from_error(err: Error) -> Self
Examples found in repository?
examples/echo_failure.rs (line 32)
28 async fn process(&self, runtime: Runtime, message: Message) -> Result<()> {
29 if message.get_type() == "echo" {
30 if self.inter.fetch_add(1, Ordering::SeqCst) > 0 {
31 let err = maelstrom::Error::TemporarilyUnavailable {};
32 let body = ErrorMessageBody::from_error(err);
33 return runtime.reply(message, body).await;
34 }
35
36 let echo = format!("Another echo {}", message.body.msg_id);
37 let msg = Value::Object(Map::from_iter([("echo".to_string(), Value::String(echo))]));
38 return runtime.reply(message, msg).await;
39 }
40
41 done(runtime, message)
42 }
Trait Implementations§
Source§impl Clone for ErrorMessageBody
impl Clone for ErrorMessageBody
Source§fn clone(&self) -> ErrorMessageBody
fn clone(&self) -> ErrorMessageBody
Returns a duplicate of the value. Read more
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ErrorMessageBody
impl Debug for ErrorMessageBody
Source§impl Default for ErrorMessageBody
impl Default for ErrorMessageBody
Source§fn default() -> ErrorMessageBody
fn default() -> ErrorMessageBody
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ErrorMessageBody
impl<'de> Deserialize<'de> for ErrorMessageBody
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<Error> for ErrorMessageBody
impl From<Error> for ErrorMessageBody
Source§impl From<ErrorMessageBody> for Error
impl From<ErrorMessageBody> for Error
Source§fn from(value: ErrorMessageBody) -> Self
fn from(value: ErrorMessageBody) -> Self
Converts to this type from the input type.
Source§impl PartialEq for ErrorMessageBody
impl PartialEq for ErrorMessageBody
Source§impl Serialize for ErrorMessageBody
impl Serialize for ErrorMessageBody
impl Eq for ErrorMessageBody
impl StructuralPartialEq for ErrorMessageBody
Auto Trait Implementations§
impl Freeze for ErrorMessageBody
impl RefUnwindSafe for ErrorMessageBody
impl Send for ErrorMessageBody
impl Sync for ErrorMessageBody
impl Unpin for ErrorMessageBody
impl UnwindSafe for ErrorMessageBody
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more