Advertisement
Guest User

Untitled

a guest
Aug 1st, 2015
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.65 KB | None | 0 0
  1. newtype LowercaseChar = LowercaseChar Char
  2.  
  3. instance arbLowercaseChar :: Arbitrary LowercaseChar where
  4. arbitrary = LowercaseChar <<< fromCharCode <<< uniformToLowercaseCharCode <$> arbitrary
  5. where
  6. uniformToLowercaseCharCode = Math.floor <<< (+ 97) <<< (* 26)
  7.  
  8. lowercaseChar :: LowercaseChar -> Char
  9. lowercaseChar (LowercaseChar c) = c
  10.  
  11. newtype LowercaseString = LowercaseString String
  12.  
  13. instance arbLowercaseString :: Arbitrary LowercaseString where
  14. arbitrary = LowercaseString <<< fromCharArray <<< (lowercaseChar <$>) <$> arbitrary
  15.  
  16. instance arbTree :: (Arbitrary a, Ord a) => Arbitrary (Tree a) where
  17. arbitrary = fromArray <<< sorted <$> arbitrary
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement