How can different types share data?
type Animal
= Dog DogData
| Bird BirdData
type alias DogData =
{ name : String
, runningSpeed : Float
}
type alias BirdData =
{ name : String
, wingSpan : Float
}
{-| This function should work for all Animals
-}
getName {name} =
nametype alias Animal =
{ name : String, data : AnimalData}
type AnimalData
= Dog DogData
| Bird BirdData
type alias DogData =
{ runningSpeed : Float
}
type alias BirdData =
{ wingSpan : Float
}
getName : Animal -> String
getName {name} =
nameQuestion
Answer
Further Reading
Last updated