File tree Expand file tree Collapse file tree 2 files changed +186
-162
lines changed Expand file tree Collapse file tree 2 files changed +186
-162
lines changed Original file line number Diff line number Diff line change 1+ #[ derive( Eq , PartialEq ) ]
2+ pub enum FieldType {
3+ String ,
4+ Predicate ,
5+ Optional ( String ) ,
6+ Body ( String ) ,
7+ List ( String ) ,
8+ }
9+
10+ pub struct FieldInfo {
11+ pub name : String ,
12+ pub ty : FieldType ,
13+ }
14+
15+ impl FieldInfo {
16+ pub fn optional ( name : & str , ty : & str ) -> FieldInfo {
17+ FieldInfo {
18+ name : name. to_string ( ) ,
19+ ty : FieldType :: Optional ( ty. to_string ( ) ) ,
20+ }
21+ }
22+
23+ pub fn body ( name : & str , ty : & str ) -> FieldInfo {
24+ FieldInfo {
25+ name : name. to_string ( ) ,
26+ ty : FieldType :: Body ( ty. to_string ( ) ) ,
27+ }
28+ }
29+
30+ pub fn string ( name : & str ) -> FieldInfo {
31+ FieldInfo {
32+ name : name. to_string ( ) ,
33+ ty : FieldType :: String ,
34+ }
35+ }
36+
37+ pub fn predicate ( name : & str ) -> FieldInfo {
38+ FieldInfo {
39+ name : name. to_string ( ) ,
40+ ty : FieldType :: Predicate ,
41+ }
42+ }
43+
44+ pub fn list ( name : & str , ty : & str ) -> FieldInfo {
45+ FieldInfo {
46+ name : name. to_string ( ) ,
47+ ty : FieldType :: List ( ty. to_string ( ) ) ,
48+ }
49+ }
50+ }
You can’t perform that action at this time.
0 commit comments