solved some TODOs about Tgeneric type arguments (2)
[hiphop-php.git] / hphp / hack / src / typing / typing_intersection.mli
blobd598720639cb5bb00fcd36e73c280e9dec470086
1 (*
2 * Copyright (c) 2015, Facebook, Inc.
3 * All rights reserved.
5 * This source code is licensed under the MIT license found in the
6 * LICENSE file in the "hack" directory of this source tree.
8 *)
10 open Typing_defs
11 open Typing_env_types
12 module Reason = Typing_reason
13 module Utils = Typing_utils
15 val non : env -> Reason.t -> locl_ty -> approx:Utils.approx -> env * locl_ty
17 val intersect : env -> r:Reason.t -> locl_ty -> locl_ty -> env * locl_ty
19 val intersect_list : env -> Reason.t -> locl_ty list -> env * locl_ty
21 val simplify_intersections :
22 env ->
23 ?on_tyvar:(env -> Reason.t -> int -> env * locl_ty) ->
24 locl_ty ->
25 env * locl_ty
27 val intersect_i :
28 env -> Typing_reason.t -> internal_type -> locl_ty -> env * internal_type