Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data DeviceId = DeviceId DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter DeviceIdCharacter
- class AsDeviceId p f s where
- deviceId :: (Monad f, CharParsing f) => f DeviceId
- getDeviceIdCharacters :: Fold DeviceId Char
Documentation
class AsDeviceId p f s where Source #
(Choice p, Applicative f) => AsDeviceId p f String Source # | |
AsDeviceId p f DeviceId Source # | |
((~) (* -> * -> *) p (->), Functor f) => AsDeviceId p f Filename Source # | |
deviceId :: (Monad f, CharParsing f) => f DeviceId Source #
>>>
parse deviceId "test" "AB0934233DEF"
Right (DeviceId (DeviceIdCharacter 'A') (DeviceIdCharacter 'B') (DeviceIdCharacter '0') (DeviceIdCharacter '9') (DeviceIdCharacter '3') (DeviceIdCharacter '4') (DeviceIdCharacter '2') (DeviceIdCharacter '3') (DeviceIdCharacter '3') (DeviceIdCharacter 'D') (DeviceIdCharacter 'E') (DeviceIdCharacter 'F'))
>>>
parse deviceId "test" "AB0934233DEFabc"
Right (DeviceId (DeviceIdCharacter 'A') (DeviceIdCharacter 'B') (DeviceIdCharacter '0') (DeviceIdCharacter '9') (DeviceIdCharacter '3') (DeviceIdCharacter '4') (DeviceIdCharacter '2') (DeviceIdCharacter '3') (DeviceIdCharacter '3') (DeviceIdCharacter 'D') (DeviceIdCharacter 'E') (DeviceIdCharacter 'F'))
>>>
parse deviceId "test" "AB0934233DX"
Left "test" (line 1, column 12): not a device ID character: X
>>>
parse deviceId "test" "AB0934233DEf"
Left "test" (line 1, column 13): not a device ID character: f
>>>
parse deviceId "test" ""
Left "test" (line 1, column 1): unexpected end of input expecting device ID