pub struct FieldError { /* fields omitted */ }Error type for errors that occur during field resolution
Field errors are represented by a human-readable error message and an
optional Value structure containing additional information.
They can be converted to from any type that implements std::fmt::Display,
which makes error chaining with the ? operator a breeze:
fn get_string(data: Vec<u8>) -> Result<String, FieldError> {
let s = String::from_utf8(data)?;
Ok(s)
}
Construct a new error with additional data
You can use the graphql_value! macro to construct an error:
use juniper::FieldError;
FieldError::new(
"Could not open connection to the database",
graphql_value!({ "internal_error": "Connection refused" })
);
The extensions parameter will be added to the "extensions" field of the error
object in the JSON response:
{
"errors": [
"message": "Could not open connection to the database",
"locations": [{"line": 2, "column": 4}],
"extensions": {
"internal_error": "Connection refused"
}
]
}
If the argument is Value::null(), no extra data will be included.
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=.