fn resolve_field_value<'a, R>(
    ctx: &ExecutionContext<'a, R>,
    object_type: &s::ObjectType,
    object_value: &Option<q::Value>,
    field: &q::Field,
    field_definition: &s::Field,
    field_type: &s::Type,
    argument_values: &HashMap<&q::Name, q::Value>,
) -> Result<q::Value, Vec<QueryExecutionError>>
where
    R: Resolver,
{
    match field_type {
        s::Type::NonNullType(inner_type) => resolve_field_value(
            ctx,
            object_type,
            object_value,
            field,
            field_definition,
            inner_type.as_ref(),
            argument_values,
        ),

        s::Type::NamedType(ref name) => resolve_field_value_for_named_type(
            ctx,
            object_type,
            object_value,
            field,
            field_definition,
            name,
            argument_values,
        ),

        s::Type::ListType(inner_type) => resolve_field_value_for_list_type(
            ctx,
            object_type,
            object_value,
            field,
            field_definition,
            inner_type.as_ref(),
            argument_values,
        ),
    }
}
/// Resolves the value of a field.
Resolves the value of a field.
Resolves the value of a field .
fn resolve_field_value<'a, R>(
    ctx: &ExecutionContext<'a, R>,
    object_type: &s::ObjectType,
    object_value: &Option<q::Value>,
    field: &q::Field,
    field_definition: &s::Field,
    field_type: &s::Type,
    argument_values: &HashMap<&q::Name, q::Value>,
) -> Result<q::Value, Vec<QueryExecutionError>>
where
    R: Resolver,
{
    match field_type {
        s::Type::NonNullType(inner_type) => resolve_field_value(
            ctx,
            object_type,
            object_value,
            field,
            field_definition,
            inner_type.as_ref(),
            argument_values,
        ),
        s::Type::NamedType(ref name) => resolve_field_value_for_named_type(
            ctx,
            object_type,
            object_value,
            field,
            field_definition,
            name,
            argument_values,
        ),
        s::Type::ListType(inner_type) => resolve_field_value_for_list_type(
            ctx,
            object_type,
            object_value,
            field,
            field_definition,
            inner_type.as_ref(),
            argument_values,
        ),
    }
}
fn resolve_field_value < ' a , R > ( ctx : & ExecutionContext < ' a , R > , object_type : & s :: ObjectType , object_value : & Option < q :: Value > , field : & q :: Field , field_definition : & s :: Field , field_type : & s :: Type , argument_values : & HashMap < & q :: Name , q :: Value > , ) -> Result < q :: Value , Vec < QueryExecutionError > > where R : Resolver , { match field_type { s :: Type :: NonNullType ( inner_type ) => resolve_field_value ( ctx , object_type , object_value , field , field_definition , inner_type . as_ref ( ) , argument_values , ) , s :: Type :: NamedType ( ref name ) => resolve_field_value_for_named_type ( ctx , object_type , object_value , field , field_definition , name , argument_values , ) , s :: Type :: ListType ( inner_type ) => resolve_field_value_for_list_type ( ctx , object_type , object_value , field , field_definition , inner_type . as_ref ( ) , argument_values , ) , } }
Resolves the value of a field.
Resolves the value of a field .
ctx
&ExecutionContext<'a, R>
object_type
&s::ObjectType
object_value
&Option<q::Value>
field
&q::Field
field_definition
&s::Field
field_type
&s::Type
argument_values
&HashMap<&q::Name, q::Value>
ctx
&ExecutionContext<'a, R>
object_type
&s::ObjectType
object_value
&Option<q::Value>
field
&q::Field
field_definition
&s::Field
field_type
&s::Type
argument_values
&HashMap<&q::Name, q::Value>