@@ -5,40 +5,31 @@ macro_rules! __graphql__args {
5
5
( @as_expr, $e: expr) => { $e } ;
6
6
( @as_pattern, $p: pat) => { $p } ;
7
7
8
- (
9
- @assign_arg_vars,
10
- $args: ident, $executorvar: ident, & mut $exec: ident
11
- ) => {
12
- let __graphql__args!( @as_pattern, $exec) = & mut $executorvar;
8
+ ( @assign_arg_vars, $args: ident, $executorvar: ident, , $( $rest: tt) * ) => {
9
+ __graphql__args!( @assign_arg_vars, $args, $executorvar, $( $rest) * ) ;
13
10
} ;
14
11
15
- (
16
- @assign_arg_vars,
17
- $args: ident, $executorvar: ident, & mut $exec: ident, $( $rest: tt) *
18
- ) => {
19
- let __graphql__args!( @as_pattern, $exec) = & mut $executorvar;
20
- __graphql__args!( @assign_arg_vars, $args, $executorvar, $( $rest) * ) ;
12
+ ( @assign_arg_vars, $args: ident, $executorvar: ident, ) => {
13
+ ( ) ;
21
14
} ;
22
15
23
16
(
24
17
@assign_arg_vars,
25
- $args: ident, $executorvar: ident,
26
- $name: ident : Option <$ty: ty> as $desc: expr, $( $rest: tt) *
18
+ $args: ident, $executorvar: ident, & mut $exec: ident $( $rest: tt) *
27
19
) => {
28
- let $name: Option <$ty> = $args
29
- . get( & $crate:: to_snake_case( stringify!( $name) ) )
30
- . unwrap_or( None ) ;
20
+ let __graphql__args!( @as_pattern, $exec) = & mut $executorvar;
31
21
__graphql__args!( @assign_arg_vars, $args, $executorvar, $( $rest) * ) ;
32
22
} ;
33
23
34
24
(
35
25
@assign_arg_vars,
36
26
$args: ident, $executorvar: ident,
37
- $name: ident : Option <$ty: ty> as $desc: expr
27
+ $name: ident : Option <$ty: ty> as $desc: tt $ ( $rest : tt ) *
38
28
) => {
39
29
let $name: Option <$ty> = $args
40
30
. get( & $crate:: to_snake_case( stringify!( $name) ) )
41
31
. unwrap_or( None ) ;
32
+ __graphql__args!( @assign_arg_vars, $args, $executorvar, $( $rest) * ) ;
42
33
} ;
43
34
44
35
(
@@ -62,20 +53,24 @@ macro_rules! __graphql__args {
62
53
. expect( "Argument missing - validation must have failed" ) ;
63
54
} ;
64
55
65
- ( @assign_arg_vars , $args : ident , $executorvar : ident , ) => {
66
- ( ) ;
56
+ ( @apply_args , $reg : expr , $base : expr , ( ) ) => {
57
+ $base
67
58
} ;
68
59
69
60
(
70
61
@apply_args,
71
- $reg: expr, $base: expr, ( & mut executor )
62
+ $reg: expr, $base: expr, ( , $ ( $rest : tt ) * )
72
63
) => {
73
- $base
64
+ __graphql__args!(
65
+ @apply_args,
66
+ $reg,
67
+ $base,
68
+ ( $( $rest) * ) )
74
69
} ;
75
70
76
71
(
77
72
@apply_args,
78
- $reg: expr, $base: expr, ( & mut executor , $( $rest: tt ) * )
73
+ $reg: expr, $base: expr, ( & mut executor $( $rest: tt ) * )
79
74
) => {
80
75
__graphql__args!(
81
76
@apply_args,
@@ -102,24 +97,14 @@ macro_rules! __graphql__args {
102
97
$reg,
103
98
$base. argument( $reg. arg_with_default:: <$t>(
104
99
& $crate:: to_snake_case( stringify!( $name) ) ,
105
- & __graphql__args!( @as_expr, $default) ) )
106
- . description( $desc) ,
100
+ & __graphql__args!( @as_expr, $default) ) ) ,
107
101
( $( $rest) * ) )
108
102
} ;
109
103
110
104
(
111
105
@apply_args,
112
- $reg: expr, $base: expr, ( $name: ident = $default: tt : $t: ty as $desc: expr )
113
- ) => {
114
- $base. argument( $reg. arg_with_default:: <$t>(
115
- & $crate:: to_snake_case( stringify!( $name) ) ,
116
- & __graphql__args!( @as_expr, $default) )
117
- . description( $desc) )
118
- } ;
119
-
120
- (
121
- @apply_args,
122
- $reg: expr, $base: expr, ( $name: ident = $default: tt : $t: ty as $desc: expr , $( $rest: tt ) * )
106
+ $reg: expr, $base: expr,
107
+ ( $name: ident = $default: tt : $t: ty as $desc: tt $( $rest: tt ) * )
123
108
) => {
124
109
__graphql__args!(
125
110
@apply_args,
@@ -153,17 +138,7 @@ macro_rules! __graphql__args {
153
138
154
139
(
155
140
@apply_args,
156
- $reg: expr, $base: expr, ( $name: ident : $t: ty as $desc: expr )
157
- ) => {
158
- $base. argument(
159
- $reg. arg:: <$t>(
160
- & $crate:: to_snake_case( stringify!( $name) ) )
161
- . description( $desc) )
162
- } ;
163
-
164
- (
165
- @apply_args,
166
- $reg: expr, $base: expr, ( $name: ident : $t: ty as $desc: expr , $( $rest: tt ) * )
141
+ $reg: expr, $base: expr, ( $name: ident : $t: ty as $desc: tt $( $rest: tt ) * )
167
142
) => {
168
143
__graphql__args!(
169
144
@apply_args,
@@ -174,8 +149,4 @@ macro_rules! __graphql__args {
174
149
. description( $desc) ) ,
175
150
( $( $rest) * ) )
176
151
} ;
177
-
178
- ( @apply_args, $reg: expr, $base: expr, ( ) ) => {
179
- $base
180
- } ;
181
152
}
0 commit comments