Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- fromRange :: forall a m. (Monad m, Random a) => (a, a) -> FakeT m a
- pickAny :: forall a m. (Monad m, Random a) => FakeT m a
- suchThatMaybe :: forall a m. Monad m => FakeT m a -> (a -> Bool) -> FakeT m (Maybe a)
- suchThat :: forall a m. Monad m => FakeT m a -> (a -> Bool) -> FakeT m a
- oneof :: forall t a m. (Monad m, Foldable t) => t (FakeT m a) -> FakeT m a
- elements :: forall t a m. (Monad m, Foldable t) => t a -> FakeT m a
- listOf :: forall a m. Monad m => Int -> FakeT m a -> FakeT m [a]
- orderedList :: forall a m. (Monad m, Ord a) => Int -> FakeT m a -> FakeT m [a]
- frequency :: forall a m. Monad m => [(Int, FakeT m a)] -> FakeT m a
- fakeEnumFromTo :: forall a m. (Monad m, Enum a) => a -> a -> FakeT m a
- fakeBoundedEnum :: forall a m. (Monad m, Enum a, Bounded a) => FakeT m a
Documentation
suchThatMaybe :: forall a m. Monad m => FakeT m a -> (a -> Bool) -> FakeT m (Maybe a) Source #
Tries to generate a value that satisfies a predicate.
λ> import qualified Faker.Address as AD λ> item :: forall a m. Text <-generate
$suchThatMaybe
AD.country (x -> (T.length x > 5)) λ> item Just Ecuador
oneof :: forall t a m. (Monad m, Foldable t) => t (FakeT m a) -> FakeT m a Source #
Randomly uses one of the given generators. The input structure must be non-empty.
λ> import qualified Faker.Address as FA λ> let fakes = [FA.country, FA.postcode, FA.state] λ> generate (oneof fakes) Montana
elements :: forall t a m. (Monad m, Foldable t) => t a -> FakeT m a Source #
Generates one of the given values. The input list must be non-empty.
λ> let fakeInt = elements [1..100] λ> generate fakeInt 22
listOf :: forall a m. Monad m => Int -> FakeT m a -> FakeT m [a] Source #
Generates a list of the given length.
orderedList :: forall a m. (Monad m, Ord a) => Int -> FakeT m a -> FakeT m [a] Source #
Generates an ordered list.
frequency :: forall a m. Monad m => [(Int, FakeT m a)] -> FakeT m a Source #
Chooses one of the given generators, with a weighted random distribution. The input list must be non-empty.
fakeEnumFromTo :: forall a m. (Monad m, Enum a) => a -> a -> FakeT m a Source #
Generate a value of an enumeration in the range [from, to].
λ> data Animal = Cat | Dog | Zebra | Elephant | Giarfee deriving (Eq,Ord,Enum, Show) λ> generate (fakeEnumFromTo Cat Zebra) Zebra
Since: 0.2.0
fakeBoundedEnum :: forall a m. (Monad m, Enum a, Bounded a) => FakeT m a Source #
A sumtype can just use this function directly. Defined as
fakeBoundedEnum = fakeEnumFromTo
minBound
maxBound
Since: 0.7.1