1
+ use crate :: internals:: name:: MultiName ;
1
2
use crate :: internals:: symbol:: * ;
2
3
use crate :: internals:: { ungroup, Ctxt } ;
3
4
use proc_macro2:: { Spacing , Span , TokenStream , TokenTree } ;
@@ -21,7 +22,7 @@ use syn::{parse_quote, token, Ident, Lifetime, Token};
21
22
22
23
pub use crate :: internals:: case:: RenameRule ;
23
24
24
- struct Attr < ' c , T > {
25
+ pub ( crate ) struct Attr < ' c , T > {
25
26
cx : & ' c Ctxt ,
26
27
name : Symbol ,
27
28
tokens : TokenStream ,
@@ -62,7 +63,7 @@ impl<'c, T> Attr<'c, T> {
62
63
}
63
64
}
64
65
65
- fn get ( self ) -> Option < T > {
66
+ pub ( crate ) fn get ( self ) -> Option < T > {
66
67
self . value
67
68
}
68
69
@@ -90,7 +91,7 @@ impl<'c> BoolAttr<'c> {
90
91
}
91
92
}
92
93
93
- struct VecAttr < ' c , T > {
94
+ pub ( crate ) struct VecAttr < ' c , T > {
94
95
cx : & ' c Ctxt ,
95
96
name : Symbol ,
96
97
first_dup_tokens : TokenStream ,
@@ -125,65 +126,15 @@ impl<'c, T> VecAttr<'c, T> {
125
126
}
126
127
}
127
128
128
- fn get ( self ) -> Vec < T > {
129
+ pub ( crate ) fn get ( self ) -> Vec < T > {
129
130
self . values
130
131
}
131
132
}
132
133
133
- pub struct MultiName {
134
- serialize : String ,
135
- serialize_renamed : bool ,
136
- deserialize : String ,
137
- deserialize_renamed : bool ,
138
- deserialize_aliases : BTreeSet < String > ,
139
- }
140
-
141
134
fn unraw ( ident : & Ident ) -> String {
142
135
ident. to_string ( ) . trim_start_matches ( "r#" ) . to_owned ( )
143
136
}
144
137
145
- impl MultiName {
146
- fn from_attrs (
147
- source_name : String ,
148
- ser_name : Attr < String > ,
149
- de_name : Attr < String > ,
150
- de_aliases : Option < VecAttr < String > > ,
151
- ) -> Self {
152
- let mut alias_set = BTreeSet :: new ( ) ;
153
- if let Some ( de_aliases) = de_aliases {
154
- for alias_name in de_aliases. get ( ) {
155
- alias_set. insert ( alias_name) ;
156
- }
157
- }
158
-
159
- let ser_name = ser_name. get ( ) ;
160
- let ser_renamed = ser_name. is_some ( ) ;
161
- let de_name = de_name. get ( ) ;
162
- let de_renamed = de_name. is_some ( ) ;
163
- MultiName {
164
- serialize : ser_name. unwrap_or_else ( || source_name. clone ( ) ) ,
165
- serialize_renamed : ser_renamed,
166
- deserialize : de_name. unwrap_or ( source_name) ,
167
- deserialize_renamed : de_renamed,
168
- deserialize_aliases : alias_set,
169
- }
170
- }
171
-
172
- /// Return the container name for the container when serializing.
173
- pub fn serialize_name ( & self ) -> & str {
174
- & self . serialize
175
- }
176
-
177
- /// Return the container name for the container when deserializing.
178
- pub fn deserialize_name ( & self ) -> & str {
179
- & self . deserialize
180
- }
181
-
182
- fn deserialize_aliases ( & self ) -> & BTreeSet < String > {
183
- & self . deserialize_aliases
184
- }
185
- }
186
-
187
138
#[ derive( Copy , Clone ) ]
188
139
pub struct RenameAllRules {
189
140
pub serialize : RenameRule ,
0 commit comments