Struct FederatedGraph

Source
pub struct FederatedGraph {
Show 15 fields pub subgraphs: Vec<Subgraph>, pub extensions: Vec<Extension>, pub root_operation_types: RootOperationTypes, pub objects: Vec<Object>, pub interfaces: Vec<Interface>, pub fields: Vec<Field>, pub directive_definitions: Vec<DirectiveDefinitionRecord>, pub directive_definition_arguments: Vec<DirectiveDefinitionArgument>, pub scalar_definitions: Vec<ScalarDefinitionRecord>, pub enum_definitions: Vec<EnumDefinitionRecord>, pub unions: Vec<Union>, pub input_objects: Vec<InputObject>, pub enum_values: Vec<EnumValueRecord>, pub input_value_definitions: Vec<InputValueDefinition>, pub strings: Vec<String>,
}

Fields§

§subgraphs: Vec<Subgraph>§extensions: Vec<Extension>§root_operation_types: RootOperationTypes§objects: Vec<Object>§interfaces: Vec<Interface>§fields: Vec<Field>§directive_definitions: Vec<DirectiveDefinitionRecord>§directive_definition_arguments: Vec<DirectiveDefinitionArgument>§scalar_definitions: Vec<ScalarDefinitionRecord>§enum_definitions: Vec<EnumDefinitionRecord>§unions: Vec<Union>§input_objects: Vec<InputObject>§enum_values: Vec<EnumValueRecord>§input_value_definitions: Vec<InputValueDefinition>

All input value definitions in the federated graph. Concretely, these are arguments of output fields, and input object fields.

§strings: Vec<String>

All the strings in the federated graph, deduplicated.

Implementations§

Source§

impl FederatedGraph

Source§

impl FederatedGraph

Source§

impl FederatedGraph

Source

pub fn push_enum_definition( &mut self, enum_definition: EnumDefinitionRecord, ) -> EnumDefinitionId

Source§

impl FederatedGraph

Source§

impl FederatedGraph

Source

pub fn push_extension(&mut self, extension: Extension) -> ExtensionId

Source§

impl FederatedGraph

Source

pub fn push_input_value_definition( &mut self, input_value_definition: InputValueDefinition, ) -> InputValueDefinitionId

Source§

impl FederatedGraph

Source

pub fn push_object(&mut self, object: Object) -> ObjectId

Source§

impl FederatedGraph

Source

pub fn push_scalar_definition( &mut self, scalar_definition: ScalarDefinitionRecord, ) -> ScalarDefinitionId

Source§

impl FederatedGraph

Source

pub fn at<Id, Record>(&self, id: Id) -> ViewNested<'_, Id, Record>
where Id: Copy, FederatedGraph: Index<Id, Output = Record>,

Start navigating the graph from the given ID. Returns a ViewNested that exposes further steps.

Source

pub fn str(&self, id: StringId) -> &str

Resolve a StringId.

Source

pub fn view<Id, Record>(&self, id: Id) -> View<Id, &Record>
where Id: Copy, FederatedGraph: Index<Id, Output = Record>,

View the record with the given ID.

Source§

impl FederatedGraph

Trait Implementations§

Source§

impl Clone for FederatedGraph

Source§

fn clone(&self) -> FederatedGraph

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for FederatedGraph

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for FederatedGraph

Source§

fn default() -> FederatedGraph

Returns the “default value” for a type. Read more
Source§

impl Index<(InputValueDefinitionId, usize)> for FederatedGraph

Source§

type Output = [InputValueDefinition]

The returned type after indexing.
Source§

fn index( &self, index: (InputValueDefinitionId, usize), ) -> &<FederatedGraph as Index<(InputValueDefinitionId, usize)>>::Output

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<DirectiveDefinitionId> for FederatedGraph

Source§

type Output = DirectiveDefinitionRecord

The returned type after indexing.
Source§

fn index(&self, index: DirectiveDefinitionId) -> &DirectiveDefinitionRecord

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<EnumDefinitionId> for FederatedGraph

Source§

type Output = EnumDefinitionRecord

The returned type after indexing.
Source§

fn index(&self, index: EnumDefinitionId) -> &EnumDefinitionRecord

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<EnumValueId> for FederatedGraph

Source§

type Output = EnumValueRecord

The returned type after indexing.
Source§

fn index(&self, index: EnumValueId) -> &EnumValueRecord

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<ExtensionId> for FederatedGraph

Source§

type Output = Extension

The returned type after indexing.
Source§

fn index(&self, index: ExtensionId) -> &Extension

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<FieldId> for FederatedGraph

Source§

type Output = Field

The returned type after indexing.
Source§

fn index(&self, index: FieldId) -> &Field

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<InputObjectId> for FederatedGraph

Source§

type Output = InputObject

The returned type after indexing.
Source§

fn index(&self, index: InputObjectId) -> &InputObject

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<InputValueDefinitionId> for FederatedGraph

Source§

type Output = InputValueDefinition

The returned type after indexing.
Source§

fn index(&self, index: InputValueDefinitionId) -> &InputValueDefinition

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<InterfaceId> for FederatedGraph

Source§

type Output = Interface

The returned type after indexing.
Source§

fn index(&self, index: InterfaceId) -> &Interface

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<ObjectId> for FederatedGraph

Source§

type Output = Object

The returned type after indexing.
Source§

fn index(&self, index: ObjectId) -> &Object

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<Range<FieldId>> for FederatedGraph

Source§

type Output = [Field]

The returned type after indexing.
Source§

fn index( &self, index: Range<FieldId>, ) -> &<FederatedGraph as Index<Range<FieldId>>>::Output

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<ScalarDefinitionId> for FederatedGraph

Source§

type Output = ScalarDefinitionRecord

The returned type after indexing.
Source§

fn index(&self, index: ScalarDefinitionId) -> &ScalarDefinitionRecord

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<StringId> for FederatedGraph

Source§

type Output = String

The returned type after indexing.
Source§

fn index(&self, index: StringId) -> &String

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<SubgraphId> for FederatedGraph

Source§

type Output = Subgraph

The returned type after indexing.
Source§

fn index(&self, index: SubgraphId) -> &Subgraph

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<UnionId> for FederatedGraph

Source§

type Output = Union

The returned type after indexing.
Source§

fn index(&self, index: UnionId) -> &Union

Performs the indexing (container[index]) operation. Read more
Source§

impl IndexMut<DirectiveDefinitionId> for FederatedGraph

Source§

fn index_mut( &mut self, index: DirectiveDefinitionId, ) -> &mut DirectiveDefinitionRecord

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<EnumDefinitionId> for FederatedGraph

Source§

fn index_mut(&mut self, index: EnumDefinitionId) -> &mut EnumDefinitionRecord

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<EnumValueId> for FederatedGraph

Source§

fn index_mut(&mut self, index: EnumValueId) -> &mut EnumValueRecord

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<ExtensionId> for FederatedGraph

Source§

fn index_mut(&mut self, index: ExtensionId) -> &mut Extension

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<FieldId> for FederatedGraph

Source§

fn index_mut(&mut self, index: FieldId) -> &mut Field

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<InputObjectId> for FederatedGraph

Source§

fn index_mut(&mut self, index: InputObjectId) -> &mut InputObject

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<InputValueDefinitionId> for FederatedGraph

Source§

fn index_mut( &mut self, index: InputValueDefinitionId, ) -> &mut InputValueDefinition

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<InterfaceId> for FederatedGraph

Source§

fn index_mut(&mut self, index: InterfaceId) -> &mut Interface

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<ObjectId> for FederatedGraph

Source§

fn index_mut(&mut self, index: ObjectId) -> &mut Object

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<ScalarDefinitionId> for FederatedGraph

Source§

fn index_mut( &mut self, index: ScalarDefinitionId, ) -> &mut ScalarDefinitionRecord

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<StringId> for FederatedGraph

Source§

fn index_mut(&mut self, index: StringId) -> &mut String

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<SubgraphId> for FederatedGraph

Source§

fn index_mut(&mut self, index: SubgraphId) -> &mut Subgraph

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<UnionId> for FederatedGraph

Source§

fn index_mut(&mut self, index: UnionId) -> &mut Union

Performs the mutable indexing (container[index]) operation. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Paint for T
where T: ?Sized,

Source§

fn fg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the foreground set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like red() and green(), which have the same functionality but are pithier.

§Example

Set foreground color to white using fg():

use yansi::{Paint, Color};

painted.fg(Color::White);

Set foreground color to white using white().

use yansi::Paint;

painted.white();
Source§

fn primary(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Primary].

§Example
println!("{}", value.primary());
Source§

fn fixed(&self, color: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Fixed].

§Example
println!("{}", value.fixed(color));
Source§

fn rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Rgb].

§Example
println!("{}", value.rgb(r, g, b));
Source§

fn black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Black].

§Example
println!("{}", value.black());
Source§

fn red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Red].

§Example
println!("{}", value.red());
Source§

fn green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Green].

§Example
println!("{}", value.green());
Source§

fn yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Yellow].

§Example
println!("{}", value.yellow());
Source§

fn blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Blue].

§Example
println!("{}", value.blue());
Source§

fn magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Magenta].

§Example
println!("{}", value.magenta());
Source§

fn cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Cyan].

§Example
println!("{}", value.cyan());
Source§

fn white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: White].

§Example
println!("{}", value.white());
Source§

fn bright_black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlack].

§Example
println!("{}", value.bright_black());
Source§

fn bright_red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightRed].

§Example
println!("{}", value.bright_red());
Source§

fn bright_green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightGreen].

§Example
println!("{}", value.bright_green());
Source§

fn bright_yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightYellow].

§Example
println!("{}", value.bright_yellow());
Source§

fn bright_blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlue].

§Example
println!("{}", value.bright_blue());
Source§

fn bright_magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.bright_magenta());
Source§

fn bright_cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightCyan].

§Example
println!("{}", value.bright_cyan());
Source§

fn bright_white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightWhite].

§Example
println!("{}", value.bright_white());
Source§

fn bg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the background set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like on_red() and on_green(), which have the same functionality but are pithier.

§Example

Set background color to red using fg():

use yansi::{Paint, Color};

painted.bg(Color::Red);

Set background color to red using on_red().

use yansi::Paint;

painted.on_red();
Source§

fn on_primary(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Primary].

§Example
println!("{}", value.on_primary());
Source§

fn on_fixed(&self, color: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Fixed].

§Example
println!("{}", value.on_fixed(color));
Source§

fn on_rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Rgb].

§Example
println!("{}", value.on_rgb(r, g, b));
Source§

fn on_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Black].

§Example
println!("{}", value.on_black());
Source§

fn on_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Red].

§Example
println!("{}", value.on_red());
Source§

fn on_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Green].

§Example
println!("{}", value.on_green());
Source§

fn on_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Yellow].

§Example
println!("{}", value.on_yellow());
Source§

fn on_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Blue].

§Example
println!("{}", value.on_blue());
Source§

fn on_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Magenta].

§Example
println!("{}", value.on_magenta());
Source§

fn on_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Cyan].

§Example
println!("{}", value.on_cyan());
Source§

fn on_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: White].

§Example
println!("{}", value.on_white());
Source§

fn on_bright_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlack].

§Example
println!("{}", value.on_bright_black());
Source§

fn on_bright_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightRed].

§Example
println!("{}", value.on_bright_red());
Source§

fn on_bright_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightGreen].

§Example
println!("{}", value.on_bright_green());
Source§

fn on_bright_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightYellow].

§Example
println!("{}", value.on_bright_yellow());
Source§

fn on_bright_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlue].

§Example
println!("{}", value.on_bright_blue());
Source§

fn on_bright_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.on_bright_magenta());
Source§

fn on_bright_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightCyan].

§Example
println!("{}", value.on_bright_cyan());
Source§

fn on_bright_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightWhite].

§Example
println!("{}", value.on_bright_white());
Source§

fn attr(&self, value: Attribute) -> Painted<&T>

Enables the styling Attribute value.

This method should be used rarely. Instead, prefer to use attribute-specific builder methods like bold() and underline(), which have the same functionality but are pithier.

§Example

Make text bold using attr():

use yansi::{Paint, Attribute};

painted.attr(Attribute::Bold);

Make text bold using using bold().

use yansi::Paint;

painted.bold();
Source§

fn bold(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Bold].

§Example
println!("{}", value.bold());
Source§

fn dim(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Dim].

§Example
println!("{}", value.dim());
Source§

fn italic(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Italic].

§Example
println!("{}", value.italic());
Source§

fn underline(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Underline].

§Example
println!("{}", value.underline());

Returns self with the attr() set to [Attribute :: Blink].

§Example
println!("{}", value.blink());

Returns self with the attr() set to [Attribute :: RapidBlink].

§Example
println!("{}", value.rapid_blink());
Source§

fn invert(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Invert].

§Example
println!("{}", value.invert());
Source§

fn conceal(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Conceal].

§Example
println!("{}", value.conceal());
Source§

fn strike(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Strike].

§Example
println!("{}", value.strike());
Source§

fn quirk(&self, value: Quirk) -> Painted<&T>

Enables the yansi Quirk value.

This method should be used rarely. Instead, prefer to use quirk-specific builder methods like mask() and wrap(), which have the same functionality but are pithier.

§Example

Enable wrapping using .quirk():

use yansi::{Paint, Quirk};

painted.quirk(Quirk::Wrap);

Enable wrapping using wrap().

use yansi::Paint;

painted.wrap();
Source§

fn mask(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Mask].

§Example
println!("{}", value.mask());
Source§

fn wrap(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Wrap].

§Example
println!("{}", value.wrap());
Source§

fn linger(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Linger].

§Example
println!("{}", value.linger());
Source§

fn clear(&self) -> Painted<&T>

👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear(). The clear() method will be removed in a future release.

Returns self with the quirk() set to [Quirk :: Clear].

§Example
println!("{}", value.clear());
Source§

fn resetting(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Resetting].

§Example
println!("{}", value.resetting());
Source§

fn bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Bright].

§Example
println!("{}", value.bright());
Source§

fn on_bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: OnBright].

§Example
println!("{}", value.on_bright());
Source§

fn whenever(&self, value: Condition) -> Painted<&T>

Conditionally enable styling based on whether the Condition value applies. Replaces any previous condition.

See the crate level docs for more details.

§Example

Enable styling painted only when both stdout and stderr are TTYs:

use yansi::{Paint, Condition};

painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);
Source§

fn new(self) -> Painted<Self>
where Self: Sized,

Create a new Painted with a default Style. Read more
Source§

fn paint<S>(&self, style: S) -> Painted<&Self>
where S: Into<Style>,

Apply a style wholesale to self. Any previous style is replaced. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T