|
@@ -761,13 +761,13 @@ let rec is_null ?(no_lazy=false) = function
|
|
(* Determines if we have a Null<T>. Unlike is_null, this returns true even if the wrapped type is nullable itself. *)
|
|
(* Determines if we have a Null<T>. Unlike is_null, this returns true even if the wrapped type is nullable itself. *)
|
|
let rec is_explicit_null = function
|
|
let rec is_explicit_null = function
|
|
| TMono r ->
|
|
| TMono r ->
|
|
- (match !r with None -> false | Some t -> is_null t)
|
|
|
|
|
|
+ (match !r with None -> false | Some t -> is_explicit_null t)
|
|
| TAbstract ({ a_path = ([],"Null") },[t]) ->
|
|
| TAbstract ({ a_path = ([],"Null") },[t]) ->
|
|
true
|
|
true
|
|
| TLazy f ->
|
|
| TLazy f ->
|
|
- is_null (lazy_type f)
|
|
|
|
|
|
+ is_explicit_null (lazy_type f)
|
|
| TType (t,tl) ->
|
|
| TType (t,tl) ->
|
|
- is_null (apply_params t.t_params tl t.t_type)
|
|
|
|
|
|
+ is_explicit_null (apply_params t.t_params tl t.t_type)
|
|
| _ ->
|
|
| _ ->
|
|
false
|
|
false
|
|
|
|
|