Source file conan_grace.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
let tree = Conan.Tree.Unsafe.node
             [(Conan.Tree.Unsafe.elt ?filename:(Some "grace") ?line:(Some 20)
                 (let ty = Conan.Ty.search ~compact_whitespaces:false
                             ~optional_blank:false
                             ~lower_case_insensitive:false
                             ~upper_case_insensitive:false `Text ~trim:false
                             25L ~pattern:"# ACE/gr fit description\\" in
                  Conan.Tree.Unsafe.rule
                    ~offset:(Conan.Offset.Absolute (Conan.Offset.Value 0L))
                    ty
                    (Conan.Test.string
                       (Conan.Comparison.equal_to
                          "# ACE/gr fit description\\"))
                    (`Space "ACE/gr fit description file")),
               Conan.Tree.Unsafe.leaf);
              (Conan.Tree.Unsafe.elt ?filename:(Some "grace") ?line:(Some 14)
                 (let ty = Conan.Ty.search ~compact_whitespaces:false
                             ~optional_blank:false
                             ~lower_case_insensitive:false
                             ~upper_case_insensitive:false `Text ~trim:false
                             20L ~pattern:"# Grace project file" in
                  Conan.Tree.Unsafe.rule
                    ~offset:(Conan.Offset.Absolute (Conan.Offset.Value 0L))
                    ty
                    (Conan.Test.string
                       (Conan.Comparison.equal_to "# Grace project file"))
                    (`Space "Grace project file")),
               Conan.Tree.Unsafe.node
                 [(Conan.Tree.Unsafe.elt ?filename:(Some "grace")
                     ?line:(Some 15)
                     (let ty = Conan.Ty.search ~compact_whitespaces:false
                                 ~optional_blank:false
                                 ~lower_case_insensitive:false
                                 ~upper_case_insensitive:false `Text
                                 ~trim:false 9L ~pattern:"@version\\" in
                      Conan.Tree.Unsafe.rule
                        ~offset:(Conan.Offset.Absolute
                                 (Conan.Offset.Value 23L))
                        ty
                        (Conan.Test.string
                           (Conan.Comparison.equal_to "@version\\"))
                        (`Space "(version")),
                   Conan.Tree.Unsafe.node
                     [(Conan.Tree.Unsafe.elt ?filename:(Some "grace")
                         ?line:(Some 18)
                         (let ty = Conan.Ty.search ~compact_whitespaces:false
                                     ~optional_blank:false
                                     ~lower_case_insensitive:false
                                     ~upper_case_insensitive:false `Text
                                     ~trim:false 2L ~pattern:"\000" in
                          Conan.Tree.Unsafe.rule
                            ~offset:(Conan.Offset.Absolute
                                     (Conan.Offset.Value 35L))
                            ty
                            (Conan.Test.string
                               (Conan.Comparison.greater_than "\000"))
                            (`No_space ".%.2s)")),
                       Conan.Tree.Unsafe.leaf);
                      (Conan.Tree.Unsafe.elt ?filename:(Some "grace")
                         ?line:(Some 17)
                         (let ty = Conan.Ty.search ~compact_whitespaces:false
                                     ~optional_blank:false
                                     ~lower_case_insensitive:false
                                     ~upper_case_insensitive:false `Text
                                     ~trim:false 2L ~pattern:"\000" in
                          Conan.Tree.Unsafe.rule
                            ~offset:(Conan.Offset.Absolute
                                     (Conan.Offset.Value 33L))
                            ty
                            (Conan.Test.string
                               (Conan.Comparison.greater_than "\000"))
                            (`No_space ".%.2s")),
                       Conan.Tree.Unsafe.leaf);
                      (Conan.Tree.Unsafe.elt ?filename:(Some "grace")
                         ?line:(Some 16)
                         (let ty = Conan.Ty.numeric ~unsigned:false
                                     Conan.Integer.byte
                                     (Conan.Arithmetic.Add '\000') in
                          Conan.Tree.Unsafe.rule
                            ~offset:(Conan.Offset.Absolute
                                     (Conan.Offset.Value 32L))
                            ty
                            (Conan.Test.numeric Conan.Integer.byte
                               (Conan.Comparison.greater_than '\000'))
                            (`Space "%c")),
                       Conan.Tree.Unsafe.leaf)])]);
              (Conan.Tree.Unsafe.elt ?filename:(Some "grace") ?line:(Some 12)
                 (let ty = Conan.Ty.search ~compact_whitespaces:false
                             ~optional_blank:false
                             ~lower_case_insensitive:false
                             ~upper_case_insensitive:false `Text ~trim:false
                             23L ~pattern:"# ACE/gr parameter file" in
                  Conan.Tree.Unsafe.rule
                    ~offset:(Conan.Offset.Absolute (Conan.Offset.Value 0L))
                    ty
                    (Conan.Test.string
                       (Conan.Comparison.equal_to "# ACE/gr parameter file"))
                    (`Space "ACE/gr ascii file")),
               Conan.Tree.Unsafe.leaf);
              (Conan.Tree.Unsafe.elt ?filename:(Some "grace") ?line:(Some 11)
                 (let ty = Conan.Ty.search ~compact_whitespaces:false
                             ~optional_blank:false
                             ~lower_case_insensitive:false
                             ~upper_case_insensitive:false `Text ~trim:false
                             21L ~pattern:"# xmgr parameter file" in
                  Conan.Tree.Unsafe.rule
                    ~offset:(Conan.Offset.Absolute (Conan.Offset.Value 0L))
                    ty
                    (Conan.Test.string
                       (Conan.Comparison.equal_to "# xmgr parameter file"))
                    (`Space "ACE/gr ascii file")),
               Conan.Tree.Unsafe.leaf);
              (Conan.Tree.Unsafe.elt ?filename:(Some "grace") ?line:(Some 10)
                 (let ty = Conan.Ty.search ~compact_whitespaces:false
                             ~optional_blank:false
                             ~lower_case_insensitive:false
                             ~upper_case_insensitive:false `Text ~trim:false
                             21L ~pattern:"# xvgr parameter file" in
                  Conan.Tree.Unsafe.rule
                    ~offset:(Conan.Offset.Absolute (Conan.Offset.Value 0L))
                    ty
                    (Conan.Test.string
                       (Conan.Comparison.equal_to "# xvgr parameter file"))
                    (`Space "ACE/gr ascii file")),
               Conan.Tree.Unsafe.leaf);
              (Conan.Tree.Unsafe.elt ?filename:(Some "grace") ?line:(Some 7)
                 (let ty = Conan.Ty.search ~compact_whitespaces:false
                             ~optional_blank:false
                             ~lower_case_insensitive:false
                             ~upper_case_insensitive:false `Text ~trim:false
                             28L
                             ~pattern:"\000\000\0001\000\000\0000\000\000\0000\000\000\0002\000\000\0000\000\000\0000\000\000\0003" in
                  Conan.Tree.Unsafe.rule
                    ~offset:(Conan.Offset.Absolute (Conan.Offset.Value 0L))
                    ty
                    (Conan.Test.string
                       (Conan.Comparison.equal_to
                          "\000\000\0001\000\000\0000\000\000\0000\000\000\0002\000\000\0000\000\000\0000\000\000\0003"))
                    (`Space "old ACE/gr binary file")),
               Conan.Tree.Unsafe.node
                 [(Conan.Tree.Unsafe.elt ?filename:(Some "grace")
                     ?line:(Some 8)
                     (let ty = Conan.Ty.numeric ~unsigned:false
                                 Conan.Integer.byte
                                 (Conan.Arithmetic.Add '\000') in
                      Conan.Tree.Unsafe.rule
                        ~offset:(Conan.Offset.Absolute
                                 (Conan.Offset.Value 39L))
                        ty
                        (Conan.Test.numeric Conan.Integer.byte
                           (Conan.Comparison.greater_than '\000'))
                        (`Space "- version %c")),
                   Conan.Tree.Unsafe.leaf)])]