[][src]Enum juniper::InputValue

pub enum InputValue<S = DefaultScalarValue> {
    Null,
    Scalar(S),
    Enum(String),
    Variable(String),
    List(Vec<Spanning<InputValue<S>>>),
    Object(Vec<(Spanning<String>, Spanning<InputValue<S>>)>),
}

A JSON-like value that can be passed into the query execution, either out-of-band, or in-band as default variable values. These are not constant and might contain variables.

Lists and objects variants are spanned, i.e. they contain a reference to their position in the source file, if available.

Variants

Null
Scalar(S)
Enum(String)
Variable(String)

Methods

impl<S> InputValue<S> where
    S: ScalarValue
[src]

pub fn null() -> Self[src]

Construct a null value.

pub fn int(i: i32) -> Self[src]

Deprecated since 0.11.0:

Use InputValue::scalar instead

Construct an integer value.

pub fn float(f: f64) -> Self[src]

Deprecated since 0.11.0:

Use InputValue::scalar instead

Construct a floating point value.

pub fn boolean(b: bool) -> Self[src]

Deprecated since 0.11.0:

Use InputValue::scalar instead

Construct a boolean value.

pub fn string<T: AsRef<str>>(s: T) -> Self[src]

Deprecated since 0.11.0:

Use InputValue::scalar instead

Construct a string value.

pub fn scalar<T>(v: T) -> Self where
    T: Into<S>, 
[src]

Construct a scalar value

pub fn enum_value<T: AsRef<str>>(s: T) -> Self[src]

Construct an enum value.

pub fn variable<T: AsRef<str>>(v: T) -> Self[src]

Construct a variable value.

pub fn list(l: Vec<Self>) -> Self[src]

Construct an unlocated list.

Convenience function to make each InputValue in the input vector not contain any location information. Can be used from ToInputValue implementations, where no source code position information is available.

pub fn parsed_list(l: Vec<Spanning<Self>>) -> Self[src]

Construct a located list.

pub fn object<K>(o: IndexMap<K, Self>) -> Self where
    K: AsRef<str> + Eq + Hash
[src]

Construct an unlocated object.

Similar to InputValue::list, it makes each key and value in the given hash map not contain any location information.

pub fn parsed_object(o: Vec<(Spanning<String>, Spanning<Self>)>) -> Self[src]

Construct a located object.

pub fn into_const(self, vars: &Variables<S>) -> Self[src]

Resolve all variables to their values.

pub fn convert<T>(&self) -> Option<T> where
    T: FromInputValue<S>,
    &'b S: ScalarRefValue<'b>, 
[src]

Shorthand form of invoking FromInputValue::from().

pub fn is_null(&self) -> bool[src]

Does the value represent null?

pub fn is_variable(&self) -> bool[src]

Does the value represent a variable?

pub fn as_enum_value(&self) -> Option<&str>[src]

View the underlying enum value, if present.

pub fn as_int_value<'a>(&'a self) -> Option<i32> where
    &'a S: Into<Option<&'a i32>>, 
[src]

Deprecated since 0.11.0:

Use InputValue::as_scalar_value instead

View the underlying int value, if present.

pub fn as_float_value<'a>(&'a self) -> Option<f64> where
    &'a S: Into<Option<&'a f64>>, 
[src]

Deprecated since 0.11.0:

Use InputValue::as_scalar_value instead

View the underlying float value, if present.

pub fn as_string_value<'a>(&'a self) -> Option<&'a str> where
    &'a S: Into<Option<&'a String>>, 
[src]

Deprecated since 0.11.0:

Use InputValue::as_scalar_value instead

View the underlying string value, if present.

pub fn as_scalar(&self) -> Option<&S>[src]

View the underlying scalar value, if present.

pub fn as_scalar_value<'a, T>(&'a self) -> Option<&'a T> where
    T: 'a,
    &'a S: Into<Option<&'a T>>, 
[src]

View the underlying scalar value, if present.

pub fn to_object_value<'a>(&'a self) -> Option<IndexMap<&'a str, &'a Self>>[src]

Convert the input value to an unlocated object value.

This constructs a new IndexMap that contain references to the keys and values in self.

pub fn to_list_value(&self) -> Option<Vec<&Self>>[src]

Convert the input value to an unlocated list value.

This constructs a new vector that contain references to the values in self.

pub fn referenced_variables(&self) -> Vec<&str>[src]

Recursively find all variables

pub fn unlocated_eq(&self, other: &Self) -> bool[src]

Compare equality with another InputValue ignoring any source position information.

Trait Implementations

impl<S: Clone> Clone for InputValue<S>[src]

impl<S: Debug> Debug for InputValue<S>[src]

impl<'de, S> Deserialize<'de> for InputValue<S> where
    S: ScalarValue
[src]

impl<S> Display for InputValue<S> where
    S: ScalarValue,
    &'b S: ScalarRefValue<'b>, 
[src]

impl<S: PartialEq> PartialEq<InputValue<S>> for InputValue<S>[src]

impl<T> Serialize for InputValue<T> where
    T: ScalarValue
[src]

impl<S> StructuralPartialEq for InputValue<S>[src]

Auto Trait Implementations

impl<S> RefUnwindSafe for InputValue<S> where
    S: RefUnwindSafe

impl<S> Send for InputValue<S> where
    S: Send

impl<S> Sync for InputValue<S> where
    S: Sync

impl<S> Unpin for InputValue<S> where
    S: Unpin

impl<S> UnwindSafe for InputValue<S> where
    S: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.