1

私はquickcheck(およびhaskellも)を学んでいます。次のコードがあります:

newtype Urls = FN { unFN :: String } deriving Show

instance Arbitrary Urls where
arbitrary = do protocol <- elements ["http://"]
             name <-  listOf $ elements ['a'..'z']
             domain <- elements [".com",".com.br",".net"]
             return (FN (protocol ++ name ++ domain))

私の質問は、listOf が空 (NonEmpty) を返さないようにする方法についてです。これは、生成された一部のデータで {unFN = "http://.net"} のような文字列を受け取るためです。

4

1 に答える 1

5

listOf1の代わりに使用しlistOfます。

于 2012-09-18T22:49:37.573 に答える