pub struct Rule {
pub keyword: String,
pub name: String,
pub description: Option<String>,
pub background: Option<Background>,
pub scenarios: Vec<Scenario>,
pub tags: Vec<String>,
pub span: Span,
pub position: LineCol,
}
Expand description
A rule, as introduced in Gherkin 6.
Fields
keyword: String
The raw keyword used in the original source.
name: String
The name of the scenario.
description: Option<String>
The description of the rule, if found.
background: Option<Background>
The background of the rule, if found.
scenarios: Vec<Scenario>
The parsed scenarios from the rule directive.
The tags for the rule directive if provided.
span: Span
The (start, end)
offset the rule directive was found in the .feature file.
position: LineCol
The (line, col)
position the rule directive was found in the .feature file.
Implementations
sourceimpl Rule
impl Rule
sourcepub fn builder() -> RuleBuilder<((), (), (), (), (), (), (), ())>
pub fn builder() -> RuleBuilder<((), (), (), (), (), (), (), ())>
Create a builder for building Rule
.
On the builder, call .keyword(...)
, .name(...)
, .description(...)
(optional), .background(...)
(optional), .scenarios(...)
, .tags(...)
(optional), .span(...)
(optional), .position(...)
(optional) to set the values of the fields (they accept Into
values).
Finally, call .build()
to create the instance of Rule
.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Rule
impl<'de> Deserialize<'de> for Rule
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl<__S> GraphQLObjectType<__S> for Rule where
__S: ScalarValue,
impl<__S> GraphQLObjectType<__S> for Rule where
__S: ScalarValue,
sourceimpl<__S> GraphQLType<__S> for Rule where
__S: ScalarValue,
impl<__S> GraphQLType<__S> for Rule where
__S: ScalarValue,
sourceimpl<__S> GraphQLValue<__S> for Rule where
__S: ScalarValue,
impl<__S> GraphQLValue<__S> for Rule where
__S: ScalarValue,
type Context = ()
type Context = ()
Context type for this GraphQLValue
. Read more
type TypeInfo = ()
type TypeInfo = ()
Type that may carry additional schema information for this GraphQLValue
. Read more
sourcefn type_name<'__i>(&self, info: &'__i Self::TypeInfo) -> Option<&'__i str>
fn type_name<'__i>(&self, info: &'__i Self::TypeInfo) -> Option<&'__i str>
Returns name of the GraphQLType
exposed by this GraphQLValue
. Read more
sourcefn resolve_field(
&self,
_info: &(),
field: &str,
args: &Arguments<'_, __S>,
executor: &Executor<'_, '_, Self::Context, __S>
) -> ExecutionResult<__S>
fn resolve_field(
&self,
_info: &(),
field: &str,
args: &Arguments<'_, __S>,
executor: &Executor<'_, '_, Self::Context, __S>
) -> ExecutionResult<__S>
Resolves the value of a single field on this GraphQLValue
. Read more
sourcefn concrete_type_name(&self, _: &Self::Context, _: &Self::TypeInfo) -> String
fn concrete_type_name(&self, _: &Self::Context, _: &Self::TypeInfo) -> String
Returns the concrete GraphQLType
name for this GraphQLValue
being an interface,
an union or an object. Read more
sourcefn resolve_into_type(
&self,
info: &Self::TypeInfo,
type_name: &str,
selection_set: Option<&[Selection<'_, S>]>,
executor: &Executor<'_, '_, Self::Context, S>
) -> Result<Value<S>, FieldError<S>>
fn resolve_into_type(
&self,
info: &Self::TypeInfo,
type_name: &str,
selection_set: Option<&[Selection<'_, S>]>,
executor: &Executor<'_, '_, Self::Context, S>
) -> Result<Value<S>, FieldError<S>>
Resolves this GraphQLValue
(being an interface or an union) into a concrete
downstream object type. Read more
sourceimpl<__S> GraphQLValueAsync<__S> for Rule where
__S: ScalarValue,
__S: Send + Sync,
Self: Sync,
impl<__S> GraphQLValueAsync<__S> for Rule where
__S: ScalarValue,
__S: Send + Sync,
Self: Sync,
sourcefn resolve_field_async<'b>(
&'b self,
info: &'b Self::TypeInfo,
field: &'b str,
args: &'b Arguments<'_, __S>,
executor: &'b Executor<'_, '_, Self::Context, __S>
) -> BoxFuture<'b, ExecutionResult<__S>> where
__S: Send + Sync,
fn resolve_field_async<'b>(
&'b self,
info: &'b Self::TypeInfo,
field: &'b str,
args: &'b Arguments<'_, __S>,
executor: &'b Executor<'_, '_, Self::Context, __S>
) -> BoxFuture<'b, ExecutionResult<__S>> where
__S: Send + Sync,
Resolves the value of a single field on this GraphQLValueAsync
. Read more
sourcefn resolve_into_type_async(
&'a self,
info: &'a Self::TypeInfo,
type_name: &str,
selection_set: Option<&'a [Selection<'a, S>]>,
executor: &'a Executor<'a, 'a, Self::Context, S>
) -> Pin<Box<dyn Future<Output = Result<Value<S>, FieldError<S>>> + Send + 'a, Global>>
fn resolve_into_type_async(
&'a self,
info: &'a Self::TypeInfo,
type_name: &str,
selection_set: Option<&'a [Selection<'a, S>]>,
executor: &'a Executor<'a, 'a, Self::Context, S>
) -> Pin<Box<dyn Future<Output = Result<Value<S>, FieldError<S>>> + Send + 'a, Global>>
Resolves this GraphQLValueAsync
(being an interface or an union) into a
concrete downstream object type. Read more
sourcefn resolve_async(
&'a self,
info: &'a Self::TypeInfo,
selection_set: Option<&'a [Selection<'_, S>]>,
executor: &'a Executor<'_, '_, Self::Context, S>
) -> Pin<Box<dyn Future<Output = Result<Value<S>, FieldError<S>>> + Send + 'a, Global>>
fn resolve_async(
&'a self,
info: &'a Self::TypeInfo,
selection_set: Option<&'a [Selection<'_, S>]>,
executor: &'a Executor<'_, '_, Self::Context, S>
) -> Pin<Box<dyn Future<Output = Result<Value<S>, FieldError<S>>> + Send + 'a, Global>>
Resolves the provided selection_set
against this GraphQLValueAsync
. Read more
sourceimpl<__S> IsOutputType<__S> for Rule where
__S: ScalarValue,
impl<__S> IsOutputType<__S> for Rule where
__S: ScalarValue,
impl Eq for Rule
impl StructuralEq for Rule
impl StructuralPartialEq for Rule
Auto Trait Implementations
impl RefUnwindSafe for Rule
impl Send for Rule
impl Sync for Rule
impl Unpin for Rule
impl UnwindSafe for Rule
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more