Mercurial > urweb
comparison src/dbmodecheck.sml @ 2251:25874084bf1f
Make Mono.file a record for readability upon extension.
author | Ziv Scully <ziv@mit.edu> |
---|---|
date | Sun, 13 Sep 2015 17:02:17 -0400 |
parents | a9159911c3ba |
children | e843a04499d4 |
comparison
equal
deleted
inserted
replaced
2250:c275bbc41194 | 2251:25874084bf1f |
---|---|
14 * | 14 * |
15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
16 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 16 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
17 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 17 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
18 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | 18 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
19 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | 19 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
20 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | 20 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
21 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | 21 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
22 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | 22 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
23 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | 23 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
24 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | 24 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
29 | 29 |
30 open Mono | 30 open Mono |
31 | 31 |
32 structure IM = IntBinaryMap | 32 structure IM = IntBinaryMap |
33 | 33 |
34 fun classify (ds, ps) = | 34 fun classify {decls = ds, sideInfo = ps} = |
35 let | 35 let |
36 fun mergeModes (m1, m2) = | 36 fun mergeModes (m1, m2) = |
37 case (m1, m2) of | 37 case (m1, m2) of |
38 (NoDb, _) => m2 | 38 (NoDb, _) => m2 |
39 | (_, NoDb) => m1 | 39 | (_, NoDb) => m1 |
77 | SOME mode => ((n, side, mode), #1 (IM.remove (modes, n)))) | 77 | SOME mode => ((n, side, mode), #1 (IM.remove (modes, n)))) |
78 modes ps | 78 modes ps |
79 | 79 |
80 val ps = IM.foldli (fn (n, mode, ps) => (n, ServerOnly, mode) :: ps) ps modes | 80 val ps = IM.foldli (fn (n, mode, ps) => (n, ServerOnly, mode) :: ps) ps modes |
81 in | 81 in |
82 (ds, ps) | 82 {decls = ds, sideInfo = ps} |
83 end | 83 end |
84 | 84 |
85 end | 85 end |
86 |