@@ -115,7 +115,8 @@ let rec extractType ~env ~package (t : Types.type_expr) =
115115 payloadTypeExpr |> extractType ~env ~package
116116 |> Option. map (fun payloadTyp -> Toption (env, payloadTyp))
117117 | Tconstr (Path. Pident {name = "array" } , [payloadTypeExpr ], _ ) ->
118- Some (Tarray (env, payloadTypeExpr))
118+ payloadTypeExpr |> extractType ~env ~package
119+ |> Option. map (fun payloadTyp -> Tarray (env, payloadTyp))
119120 | Tconstr (Path. Pident {name = "bool" } , [] , _ ) -> Some (Tbool env)
120121 | Tconstr (Path. Pident {name = "string" } , [] , _ ) -> Some (Tstring env)
121122 | Tconstr (path , _ , _ ) -> (
@@ -335,11 +336,7 @@ let rec resolveNested (typ : completionType) ~env ~full ~nested =
335336 |> extractType ~env ~package: full.package
336337 |> Utils.Option. flatMap (fun typ ->
337338 typ |> resolveNested ~env ~full ~nested )))
338- | NArray , Tarray (env , typ ) ->
339- typ
340- |> extractType ~env ~package: full.package
341- |> Utils.Option. flatMap (fun typ ->
342- typ |> resolveNested ~env ~full ~nested )
339+ | NArray , Tarray (env , typ ) -> typ |> resolveNested ~env ~full ~nested
343340 | _ -> None )
344341
345342let getArgs ~env (t : Types.type_expr ) ~full =
@@ -406,8 +403,8 @@ let rec extractedTypeToString = function
406403 Shared. typeToString typ
407404 | Tbool _ -> " bool"
408405 | Tstring _ -> " string"
409- | Tarray (_ , innerTyp ) -> " array<" ^ Shared. typeToString innerTyp ^ " >"
410- | Toption (_ , typ ) -> " option<" ^ extractedTypeToString typ ^ " >"
406+ | Tarray (_ , innerTyp ) -> " array<" ^ extractedTypeToString innerTyp ^ " >"
407+ | Toption (_ , innerTyp ) -> " option<" ^ extractedTypeToString innerTyp ^ " >"
411408 | Tvariant {variantDecl; variantName} ->
412409 Shared. declToString variantName variantDecl
413410 | Trecord {definition = `NameOnly name ; fields} ->
0 commit comments