botanist/
macro_helpers.rs

1use juniper::{
2    DefaultScalarValue, LookAheadMethods, LookAheadSelection, LookAheadValue, ScalarValue,
3};
4
5pub fn int_argument_from_look_ahead(
6    look_ahead: &LookAheadSelection<DefaultScalarValue>,
7    argument: &str,
8    default: i32,
9) -> i32 {
10    look_ahead
11        .argument(argument)
12        .map(|arg| {
13            if let LookAheadValue::Scalar(limit) = arg.value() {
14                limit.as_int().unwrap_or(default)
15            } else {
16                default
17            }
18        })
19        .unwrap_or(default)
20}