elm-language-server
elm-language-server copied to clipboard
Type inference error when using a generic type alias
RangeFilterData
is getting bound to RangeFilterData Float
and then failing when trying to decode for a date.
case ... of
"NumericRangeFilter" ->
(Decode.succeed RangeFilterData
|> required "min" (Decode.nullable Decode.float)
|> required "max" (Decode.nullable Decode.float)
)
|> Decode.map NumericRangeFilter
"DateRangeFilter" ->
(Decode.succeed RangeFilterData
|> required "min" (Decode.nullable dateDecoder)
|> required "max" (Decode.nullable dateDecoder)
)
|> Decode.map DateRangeFilter
type alias RangeFilterData data =
{ min : Maybe data
, max : Maybe data
}
type FilterType
= NumericRangeFilter (RangeFilterData Float)
| DateRangeFilter (RangeFilterData Date)