Struct juniper::FieldError
[−]
[src]
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) }
Methods
impl FieldError
[src]
fn new<T: Display>(e: T, data: Value) -> FieldError
[src]
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 data
parameter will be added to the "data"
field of the error
object in the JSON response:
{
"errors": [
"message": "Could not open connection to the database",
"locations": [{"line": 2, "column": 4}],
"data": {
"internal_error": "Connection refused"
}
]
}
If the argument is Value::null()
, no extra data will be included.
Trait Implementations
impl Debug for FieldError
[src]
impl PartialEq for FieldError
[src]
fn eq(&self, __arg_0: &FieldError) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &FieldError) -> bool
[src]
This method tests for !=
.
impl<T: Display> From<T> for FieldError
[src]
fn from(e: T) -> FieldError
[src]
Performs the conversion.