@@ -39,6 +39,7 @@ scitype(X, C; kw...) = scitype(X, C, Val(trait(X)); kw...)
39
39
40
40
scitype (X, C, :: Val{:other} ; kw... ) = Unknown
41
41
scitype (:: Missing ; kw... ) = Missing
42
+ scitype (:: Nothing ; kw... ) = Nothing
42
43
43
44
scitype (t:: Tuple , :: Convention ; kw... ) = Tuple{scitype .(t; kw... )... }
44
45
@@ -106,6 +107,8 @@ Scitype(::Type{Union{T,Missing}}, C::Convention) where T =
106
107
# for the case Missing, we return Missing
107
108
Scitype (:: Type{Missing} , C:: Convention ) = Missing
108
109
110
+ Scitype (:: Type{Nothing} , C:: Convention ) = Nothing
111
+
109
112
# Broadcasting over arrays
110
113
111
114
scitype (A:: Arr{T} , C:: Convention , :: Val{:other} ; kw... ) where T =
@@ -120,7 +123,7 @@ If `tight=true` and `T>:Missing` then the function checks whether there are
120
123
"true missing values", otherwise it constructs a "tight copy" of the array
121
124
without a `Union{Missing,S}` type.
122
125
"""
123
- function arr_scitype (A:: Arr{T,N} , C:: Convention , S:: Type{<:Scientific} ;
126
+ function arr_scitype (A:: Arr{T,N} , C:: Convention , S:: Type ;
124
127
tight:: Bool = false ) where {T,N}
125
128
# no explicit scitype available
126
129
S === Unknown && return Arr{scitype_union (A),N}
0 commit comments