comparison src/mono_env.sig @ 2256:6f2ea4ed573a

Pure caching sort of works.
author Ziv Scully <ziv@mit.edu>
date Sun, 27 Sep 2015 03:52:14 -0400
parents d328983dc5a6
children 28a541bd2d23
comparison
equal deleted inserted replaced
2255:8428c534913a 2256:6f2ea4ed573a
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
40 val lookupConstructor : env -> int -> string * Mono.typ option * int 40 val lookupConstructor : env -> int -> string * Mono.typ option * int
41 41
42 val pushERel : env -> string -> Mono.typ -> Mono.exp option -> env 42 val pushERel : env -> string -> Mono.typ -> Mono.exp option -> env
43 val lookupERel : env -> int -> string * Mono.typ * Mono.exp option 43 val lookupERel : env -> int -> string * Mono.typ * Mono.exp option
44 44
45 val typeContext : env -> Mono.typ list
46
45 val pushENamed : env -> string -> int -> Mono.typ -> Mono.exp option -> string -> env 47 val pushENamed : env -> string -> int -> Mono.typ -> Mono.exp option -> string -> env
46 val lookupENamed : env -> int -> string * Mono.typ * Mono.exp option * string 48 val lookupENamed : env -> int -> string * Mono.typ * Mono.exp option * string
47 49
48 val declBinds : env -> Mono.decl -> env 50 val declBinds : env -> Mono.decl -> env
49 val patBinds : env -> Mono.pat -> env 51 val patBinds : env -> Mono.pat -> env