Skip to content

Instantly share code, notes, and snippets.

@zxexz
Created October 28, 2017 04:32
Show Gist options
  • Save zxexz/2195f21e7dd90480c0bad683178070bc to your computer and use it in GitHub Desktop.
Save zxexz/2195f21e7dd90480c0bad683178070bc to your computer and use it in GitHub Desktop.
data SiteCode = C00 | C00_0 | C00_1 | C00_2 | C00_3 | C00_4 | C00_5 | C00_6 | C00_8 | C00_9 | C01 | C01_9 | C02 | C02_0 | C02_1 | C02_2 | C02_3 | C02_4 | C02_8 | C02_9 | C03 | C03_0 | C03_1 | C03_9 | C04 | C04_0 | C04_1 | C04_8 | C04_9 | C05 | C05_0 | C05_1 | C05_2 | C05_8 | C05_9 | C06 | C06_0 | C06_1 | C06_2 | C06_8 | C06_9 | C07 | C07_9 | C08 | C08_0 | C08_1 | C08_8 | C08_9 | C09 | C09_0 | C09_1 | C09_8 | C09_9 | C10 | C10_0 | C10_1 | C10_2 | C10_3 | C10_4 | C10_8 | C10_9 | C11 | C11_0 | C11_1 | C11_2 | C11_3 | C11_8 | C11_9 | C12 | C12_9 | C13 | C13_0 | C13_1 | C13_2 | C13_8 | C13_9 | C14 | C14_0 | C14_2 | C14_8 | C15 | C15_0 | C15_1 | C15_2 | C15_3 | C15_4 | C15_5 | C15_8 | C15_9 | C16 | C16_0 | C16_1 | C16_2 | C16_3 | C16_4 | C16_5 | C16_6 | C16_8 | C16_9 | C17 | C17_0 | C17_1 | C17_2 | C17_3 | C17_8 | C17_9 | C18 | C18_0 | C18_1 | C18_2 | C18_3 | C18_4 | C18_5 | C18_6 | C18_7 | C18_8 | C18_9 | C19 | C19_9 | C20 | C20_9 | C21 | C21_0 | C21_1 | C21_2 | C21_8 | C22 | C22_0 | C22_1 | C23 | C23_9 | C24 | C24_0 | C24_1 | C24_8 | C24_9 | C25 | C25_0 | C25_1 | C25_2 | C25_3 | C25_4 | C25_7 | C25_8 | C25_9 | C26 | C26_0 | C26_8 | C26_9 | C30 | C30_0 | C30_1 | C31 | C31_0 | C31_1 | C31_2 | C31_3 | C31_8 | C31_9 | C32 | C32_0 | C32_1 | C32_2 | C32_3 | C32_8 | C32_9 | C33 | C33_9 | C34 | C34_0 | C34_1 | C34_2 | C34_3 | C34_8 | C34_9 | C37 | C37_9 | C38 | C38_0 | C38_1 | C38_2 | C38_3 | C38_4 | C38_8 | C39 | C39_0 | C39_8 | C39_9 | C40 | C40_0 | C40_1 | C40_2 | C40_3 | C40_8 | C40_9 | C41 | C41_0 | C41_1 | C41_2 | C41_3 | C41_4 | C41_8 | C41_9 | C42 | C42_0 | C42_1 | C42_2 | C42_3 | C42_4 | C44 | C44_0 | C44_1 | C44_2 | C44_3 | C44_4 | C44_5 | C44_6 | C44_7 | C44_8 | C44_9 | C47 | C47_0 | C47_1 | C47_2 | C47_3 | C47_4 | C47_5 | C47_6 | C47_8 | C47_9 | C48 | C48_0 | C48_1 | C48_2 | C48_8 | C49 | C49_0 | C49_1 | C49_2 | C49_3 | C49_4 | C49_5 | C49_6 | C49_8 | C49_9 | C50 | C50_0 | C50_1 | C50_2 | C50_3 | C50_4 | C50_5 | C50_6 | C50_8 | C50_9 | C51 | C51_0 | C51_1 | C51_2 | C51_8 | C51_9 | C52 | C52_9 | C53 | C53_0 | C53_1 | C53_8 | C53_9 | C54 | C54_0 | C54_1 | C54_2 | C54_3 | C54_8 | C54_9 | C55 | C55_9 | C56 | C56_9 | C57 | C57_0 | C57_1 | C57_2 | C57_3 | C57_4 | C57_7 | C57_8 | C57_9 | C58 | C58_9 | C60 | C60_0 | C60_1 | C60_2 | C60_8 | C60_9 | C61 | C61_9 | C62 | C62_0 | C62_1 | C62_9 | C63 | C63_0 | C63_1 | C63_2 | C63_7 | C63_8 | C63_9 | C64 | C64_9 | C65 | C65_9 | C66 | C66_9 | C67 | C67_0 | C67_1 | C67_2 | C67_3 | C67_4 | C67_5 | C67_6 | C67_7 | C67_8 | C67_9 | C68 | C68_0 | C68_1 | C68_8 | C68_9 | C69 | C69_0 | C69_1 | C69_2 | C69_3 | C69_4 | C69_5 | C69_6 | C69_8 | C69_9 | C70 | C70_0 | C70_1 | C70_9 | C71 | C71_0 | C71_1 | C71_2 | C71_3 | C71_4 | C71_5 | C71_6 | C71_7 | C71_8 | C71_9 | C72 | C72_0 | C72_1 | C72_2 | C72_3 | C72_4 | C72_5 | C72_8 | C72_9 | C73 | C73_9 | C74 | C74_0 | C74_1 | C74_9 | C75 | C75_0 | C75_1 | C75_2 | C75_3 | C75_4 | C75_5 | C75_8 | C75_9 | C76 | C76_0 | C76_1 | C76_2 | C76_3 | C76_4 | C76_5 | C76_7 | C76_8 | C77 | C77_0 | C77_1 | C77_2 | C77_3 | C77_4 | C77_5 | C77_8 | C77_9 | C80 | C80_9 deriving (Eq, Show, Read)
class ICDOCode a where
displayCode :: a -> String
readCode :: String -> a
instance ICDOCode SiteCode where
displayCode = map (\x -> if x /= '_' then x else '.') . show
readCode = read . map (\x -> if x /= '.' then x else '_')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment