Skip to content
This repository
Newer
Older
100644 48 lines (37 sloc) 1.891 kb
fccc6851 »
2011-06-21 Initial open-source release
1 (*
2 Copyright © 2011 MLstate
3
4 This file is part of OPA.
5
6 OPA is free software: you can redistribute it and/or modify it under the
7 terms of the GNU Affero General Public License, version 3, as published by
8 the Free Software Foundation.
9
10 OPA is distributed in the hope that it will be useful, but WITHOUT ANY
11 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
13 more details.
14
15 You should have received a copy of the GNU Affero General Public License
16 along with OPA. If not, see <http://www.gnu.org/licenses/>.
17 *)
18
19 (*
20 Mathieu Wed Nov 17 16:33:22 CET 2010
21 The following comments is deprecated.
22 This module should rather not exists.
23 *)
24
25 (** The content of this file belongs *logically* to qmlTypes. It
26 contains all the features that *should* be implemented there
27 (directly on public types) but are not, and rather are implemented
28 through HMX import. Of course this forbids them to be in qmlTypes
29 because that would be a cyclic dependency. In the end, this file
30 can be seen as a hack to work around the faulty Ocaml module
31 system.
32 *)
33
34
35 val equal_ty : ?gamma:QmlTypes.gamma -> QmlAst.ty -> QmlAst.ty -> bool
36
37 (* provides a list of types instantiated for argument variables during
38 unification (makes sure these variables are substituted for, by refreshing
39 and using unification invariant that newer variables are subsituted for);
40 ignores the rest of subsitution; throws an exception if unification fails *)
41 val unify_and_show_instantiation :
42 gamma:QmlTypes.gamma -> allow_partial_application:bool -> QmlAst.ty -> QmlTypes.typescheme ->
43 QmlAst.ty list * QmlAst.ty_row list * QmlAst.ty_col list
44
45 (* for now no argument can be overloaded; *)
46 val unifiable :
47 ?gamma:QmlTypes.gamma -> QmlAst.ty -> QmlAst.ty -> bool
Something went wrong with that request. Please try again.