У меня есть следующий тип данных:
type Length = Integer
type Rotation = Integer
data Colour = Colour { red, green, blue, alpha :: Int }
deriving (Show, Eq)
data Special
= L Length
| R Rotation
| Col Colour
deriving (Show, Eq)
Скажите, что у меня есть кортеж следующей формы:
let x = ("Jump", R 90)
И я извлекаю второе значение в кортеже, используя:
snd x = R 90
Есть ли способ использовать сопоставление с образцом, чтобы получить значение поворота 90 из R 90, чтобы я мог использовать его в другой области кода? Когда я использую snd x
, тип результата имеет тип Special, но я просто хотел бы получить значение Rotation. Любые идеи приветствуются.