fakedata 1.0.1 → 1.0.2
raw patch · 186 files changed
+1038/−1014 lines, 186 filesdep +aesonPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: aeson
API changes (from Hackage documentation)
+ Faker.Internal: getLocaleKey :: FakerSettings -> AesonKey
+ Faker.Internal: type AesonKey = Key
+ Faker.Internal.Types: aesonKeyFromText :: Text -> AesonKey
+ Faker.Internal.Types: aesonKeyToText :: AesonKey -> Text
+ Faker.Internal.Types: type AesonKey = Key
- Faker: InvalidField :: String -> Text -> FakerException
+ Faker: InvalidField :: String -> AesonKey -> FakerException
- Faker.Internal: cachedRandomUnresolvedVec :: (MonadThrow m, MonadIO m) => Text -> Text -> (FakerSettings -> m (Unresolved (Vector Text))) -> (FakerSettings -> Text -> m Text) -> FakerSettings -> m Text
+ Faker.Internal: cachedRandomUnresolvedVec :: (MonadThrow m, MonadIO m) => Text -> AesonKey -> (FakerSettings -> m (Unresolved (Vector Text))) -> (FakerSettings -> AesonKey -> m Text) -> FakerSettings -> m Text
- Faker.Internal: cachedRandomUnresolvedVecWithoutVector :: (MonadThrow m, MonadIO m) => Text -> Text -> (FakerSettings -> m (Unresolved Text)) -> (FakerSettings -> Text -> m Text) -> FakerSettings -> m Text
+ Faker.Internal: cachedRandomUnresolvedVecWithoutVector :: (MonadThrow m, MonadIO m) => Text -> AesonKey -> (FakerSettings -> m (Unresolved Text)) -> (FakerSettings -> AesonKey -> m Text) -> FakerSettings -> m Text
- Faker.Internal: cachedRandomVec :: (MonadThrow m, MonadIO m) => Text -> Text -> (FakerSettings -> m (Vector Text)) -> FakerSettings -> m Text
+ Faker.Internal: cachedRandomVec :: (MonadThrow m, MonadIO m) => Text -> AesonKey -> (FakerSettings -> m (Vector Text)) -> FakerSettings -> m Text
- Faker.Internal: cachedRegex :: (MonadThrow m, MonadIO m) => Text -> Text -> (FakerSettings -> m Regex) -> FakerSettings -> m RegexFakeValue
+ Faker.Internal: cachedRegex :: (MonadThrow m, MonadIO m) => Text -> AesonKey -> (FakerSettings -> m Regex) -> FakerSettings -> m RegexFakeValue
- Faker.Internal: genericResolver :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> (FakerSettings -> Text -> m Text) -> m Text
+ Faker.Internal: genericResolver :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> (FakerSettings -> AesonKey -> m Text) -> m Text
- Faker.Internal: genericResolver' :: (MonadIO m, MonadThrow m) => (FakerSettings -> Text -> m Text) -> FakerSettings -> Text -> m Text
+ Faker.Internal: genericResolver' :: (MonadIO m, MonadThrow m) => (FakerSettings -> AesonKey -> m Text) -> FakerSettings -> AesonKey -> m Text
- Faker.Internal: insertToCache :: Text -> Text -> FakerSettings -> Vector Text -> IO ()
+ Faker.Internal: insertToCache :: Text -> AesonKey -> FakerSettings -> Vector Text -> IO ()
- Faker.Internal: presentInCache :: Text -> Text -> FakerSettings -> IO (Maybe (Vector Text))
+ Faker.Internal: presentInCache :: Text -> AesonKey -> FakerSettings -> IO (Maybe (Vector Text))
- Faker.Internal: resolveUnresolved :: (MonadThrow m, MonadIO m) => FakerSettings -> Unresolved (Vector Text) -> (FakerSettings -> Text -> m Text) -> m Text
+ Faker.Internal: resolveUnresolved :: (MonadThrow m, MonadIO m) => FakerSettings -> Unresolved (Vector Text) -> (FakerSettings -> AesonKey -> m Text) -> m Text
- Faker.Internal.Types: CacheFieldKey :: !Text -> !Text -> !Text -> CacheFieldKey
+ Faker.Internal.Types: CacheFieldKey :: !Text -> !AesonKey -> !Text -> CacheFieldKey
- Faker.Internal.Types: [ckField] :: CacheFieldKey -> !Text
+ Faker.Internal.Types: [ckField] :: CacheFieldKey -> !AesonKey
Files
- ChangeLog.md +6/−0
- README.md +1/−1
- fakedata.cabal +7/−4
- src/Faker.hs +9/−5
- src/Faker/Internal.hs +37/−22
- src/Faker/Internal/Types.hs +25/−1
- src/Faker/Provider/Address.hs +6/−5
- src/Faker/Provider/Adjective.hs +7/−14
- src/Faker/Provider/Ancient.hs +3/−2
- src/Faker/Provider/Animal.hs +3/−2
- src/Faker/Provider/App.hs +6/−5
- src/Faker/Provider/Appliance.hs +3/−2
- src/Faker/Provider/AquaTeenHungerForce.hs +3/−2
- src/Faker/Provider/Artist.hs +3/−2
- src/Faker/Provider/BackToTheFuture.hs +5/−4
- src/Faker/Provider/Bank.hs +3/−2
- src/Faker/Provider/Barcode.hs +8/−7
- src/Faker/Provider/Basketball.hs +5/−4
- src/Faker/Provider/Beer.hs +3/−2
- src/Faker/Provider/BigBangTheory.hs +5/−15
- src/Faker/Provider/Bird.hs +10/−9
- src/Faker/Provider/Blood.hs +8/−7
- src/Faker/Provider/BoJackHorseman.hs +3/−2
- src/Faker/Provider/Book.hs +6/−5
- src/Faker/Provider/BossaNova.hs +3/−2
- src/Faker/Provider/BreakingBad.hs +3/−2
- src/Faker/Provider/Buffy.hs +4/−3
- src/Faker/Provider/Business.hs +3/−2
- src/Faker/Provider/Camera.hs +7/−14
- src/Faker/Provider/Cannabis.hs +3/−2
- src/Faker/Provider/Cat.hs +3/−2
- src/Faker/Provider/Chiquito.hs +5/−15
- src/Faker/Provider/ChuckNorris.hs +3/−2
- src/Faker/Provider/ClashOfClans.hs +7/−6
- src/Faker/Provider/Code.hs +3/−2
- src/Faker/Provider/Coffee.hs +8/−7
- src/Faker/Provider/Coin.hs +3/−2
- src/Faker/Provider/Color.hs +3/−2
- src/Faker/Provider/Commerce.hs +5/−4
- src/Faker/Provider/Community.hs +3/−2
- src/Faker/Provider/Company.hs +6/−5
- src/Faker/Provider/Compass.hs +8/−7
- src/Faker/Provider/Computer.hs +5/−4
- src/Faker/Provider/Conan.hs +7/−14
- src/Faker/Provider/Construction.hs +3/−2
- src/Faker/Provider/Control.hs +5/−4
- src/Faker/Provider/Cosmere.hs +3/−2
- src/Faker/Provider/CryptoCoin.hs +3/−2
- src/Faker/Provider/CultureSeries.hs +3/−2
- src/Faker/Provider/Currency.hs +3/−2
- src/Faker/Provider/DcComics.hs +3/−2
- src/Faker/Provider/Demographic.hs +3/−2
- src/Faker/Provider/Departed.hs +5/−15
- src/Faker/Provider/Dessert.hs +3/−2
- src/Faker/Provider/Device.hs +3/−2
- src/Faker/Provider/Dnd.hs +5/−15
- src/Faker/Provider/Dog.hs +3/−2
- src/Faker/Provider/Doraemon.hs +7/−14
- src/Faker/Provider/Dota.hs +5/−4
- src/Faker/Provider/DrWho.hs +3/−2
- src/Faker/Provider/DragonBall.hs +3/−2
- src/Faker/Provider/DrivingLicense.hs +10/−9
- src/Faker/Provider/Drone.hs +10/−15
- src/Faker/Provider/DumbAndDumber.hs +3/−2
- src/Faker/Provider/Dune.hs +5/−4
- src/Faker/Provider/Educator.hs +10/−9
- src/Faker/Provider/ElderScrolls.hs +5/−4
- src/Faker/Provider/ElectricalComponents.hs +5/−4
- src/Faker/Provider/Esport.hs +5/−4
- src/Faker/Provider/Fallout.hs +5/−4
- src/Faker/Provider/FamilyGuy.hs +5/−4
- src/Faker/Provider/File.hs +5/−4
- src/Faker/Provider/FinalSpace.hs +7/−14
- src/Faker/Provider/Finance.hs +8/−7
- src/Faker/Provider/Food.hs +5/−4
- src/Faker/Provider/Football.hs +5/−4
- src/Faker/Provider/FreshPrinceOfBelAir.hs +5/−4
- src/Faker/Provider/Friends.hs +5/−4
- src/Faker/Provider/FunnyName.hs +5/−4
- src/Faker/Provider/Futurama.hs +7/−17
- src/Faker/Provider/GameOfThrones.hs +5/−4
- src/Faker/Provider/Gender.hs +5/−5
- src/Faker/Provider/Ghostbusters.hs +5/−4
- src/Faker/Provider/GratefulDead.hs +5/−4
- src/Faker/Provider/GreekPhilosophers.hs +5/−4
- src/Faker/Provider/Hacker.hs +5/−4
- src/Faker/Provider/HalfLife.hs +5/−4
- src/Faker/Provider/HarryPotter.hs +5/−4
- src/Faker/Provider/Heroes.hs +5/−4
- src/Faker/Provider/HeroesOfTheStorm.hs +5/−4
- src/Faker/Provider/HeyArnold.hs +5/−4
- src/Faker/Provider/Hipster.hs +5/−4
- src/Faker/Provider/HitchhikersGuideToTheGalaxy.hs +5/−4
- src/Faker/Provider/Horse.hs +5/−4
- src/Faker/Provider/House.hs +5/−4
- src/Faker/Provider/HowIMetYourMother.hs +5/−4
- src/Faker/Provider/HowToTrainYourDragon.hs +7/−14
- src/Faker/Provider/IndustrySegments.hs +5/−4
- src/Faker/Provider/Internet.hs +5/−4
- src/Faker/Provider/JackHandey.hs +7/−14
- src/Faker/Provider/Job.hs +8/−7
- src/Faker/Provider/Kpop.hs +5/−4
- src/Faker/Provider/LeagueOfLegends.hs +5/−4
- src/Faker/Provider/Lebowski.hs +5/−4
- src/Faker/Provider/Lorem.hs +5/−4
- src/Faker/Provider/Lovecraft.hs +5/−4
- src/Faker/Provider/Markdown.hs +5/−4
- src/Faker/Provider/Marketing.hs +5/−4
- src/Faker/Provider/Measurement.hs +5/−4
- src/Faker/Provider/MichaelScott.hs +5/−4
- src/Faker/Provider/Military.hs +5/−4
- src/Faker/Provider/Minecraft.hs +7/−6
- src/Faker/Provider/Mountain.hs +7/−14
- src/Faker/Provider/Movie.hs +5/−4
- src/Faker/Provider/Music.hs +7/−8
- src/Faker/Provider/Myst.hs +5/−4
- src/Faker/Provider/Name.hs +8/−7
- src/Faker/Provider/Naruto.hs +7/−14
- src/Faker/Provider/Nation.hs +5/−4
- src/Faker/Provider/NatoPhoneticAlphabet.hs +5/−4
- src/Faker/Provider/NewGirl.hs +5/−4
- src/Faker/Provider/OnePiece.hs +5/−4
- src/Faker/Provider/Opera.hs +5/−4
- src/Faker/Provider/Overwatch.hs +5/−4
- src/Faker/Provider/ParksAndRec.hs +5/−4
- src/Faker/Provider/PearlJam.hs +5/−4
- src/Faker/Provider/Phish.hs +5/−4
- src/Faker/Provider/PhoneNumber.hs +12/−11
- src/Faker/Provider/Pokemon.hs +5/−4
- src/Faker/Provider/Prince.hs +7/−17
- src/Faker/Provider/PrincessBride.hs +5/−4
- src/Faker/Provider/ProgrammingLanguage.hs +5/−4
- src/Faker/Provider/Quote.hs +5/−4
- src/Faker/Provider/Rajnikanth.hs +5/−4
- src/Faker/Provider/Relationship.hs +5/−4
- src/Faker/Provider/Restaurant.hs +8/−7
- src/Faker/Provider/RickAndMorty.hs +5/−4
- src/Faker/Provider/RockBand.hs +5/−4
- src/Faker/Provider/Room.hs +7/−14
- src/Faker/Provider/Rupaul.hs +5/−4
- src/Faker/Provider/Rush.hs +7/−17
- src/Faker/Provider/Science.hs +5/−4
- src/Faker/Provider/Seinfeld.hs +5/−4
- src/Faker/Provider/Shakespeare.hs +5/−4
- src/Faker/Provider/Show.hs +5/−4
- src/Faker/Provider/SiliconValley.hs +5/−4
- src/Faker/Provider/Simpsons.hs +5/−4
- src/Faker/Provider/SlackEmoji.hs +8/−7
- src/Faker/Provider/SonicTheHedgehog.hs +5/−4
- src/Faker/Provider/Source.hs +5/−4
- src/Faker/Provider/SouthPark.hs +5/−4
- src/Faker/Provider/Space.hs +5/−4
- src/Faker/Provider/StarTrek.hs +5/−4
- src/Faker/Provider/StarWars.hs +8/−7
- src/Faker/Provider/Stargate.hs +5/−4
- src/Faker/Provider/StrangerThings.hs +5/−4
- src/Faker/Provider/StreetFighter.hs +7/−17
- src/Faker/Provider/StudioGhibli.hs +7/−17
- src/Faker/Provider/Subscription.hs +5/−4
- src/Faker/Provider/Suits.hs +5/−15
- src/Faker/Provider/SuperMario.hs +7/−6
- src/Faker/Provider/SuperSmashBros.hs +5/−4
- src/Faker/Provider/Superhero.hs +8/−7
- src/Faker/Provider/SwordArtOnline.hs +5/−4
- src/Faker/Provider/Tea.hs +7/−6
- src/Faker/Provider/Team.hs +8/−7
- src/Faker/Provider/TheExpanse.hs +5/−4
- src/Faker/Provider/TheItCrowd.hs +5/−4
- src/Faker/Provider/TheThickOfIt.hs +5/−4
- src/Faker/Provider/Tolkien.hs +7/−6
- src/Faker/Provider/Touhou.hs +7/−6
- src/Faker/Provider/TwinPeaks.hs +5/−4
- src/Faker/Provider/UmphreysMcgee.hs +5/−4
- src/Faker/Provider/University.hs +8/−7
- src/Faker/Provider/VForVendetta.hs +5/−4
- src/Faker/Provider/Vehicle.hs +8/−7
- src/Faker/Provider/VentureBros.hs +5/−4
- src/Faker/Provider/Verbs.hs +5/−4
- src/Faker/Provider/Volleyball.hs +7/−14
- src/Faker/Provider/WarhammerFantasy.hs +5/−4
- src/Faker/Provider/Witcher.hs +5/−4
- src/Faker/Provider/WorldCup.hs +5/−4
- src/Faker/Provider/WorldOfWarcraft.hs +5/−4
- src/Faker/Provider/Yoda.hs +5/−4
- src/Faker/Provider/Zelda.hs +4/−4
- test/AddressSpec.hs +3/−2
ChangeLog.md view
@@ -1,5 +1,11 @@ # Changelog for fakedata +## 1.0.2++* Make it compatible with aeson 1 and 2.++### Breaking changes+ ## 1.0.1 * Improve README with use cases
README.md view
@@ -1,4 +1,4 @@-+ [](https://hackage.haskell.org/package/fakedata) [](http://stackage.org/nightly/package/fakedata)
fakedata.cabal view
@@ -1,11 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.34.4.+-- This file has been generated from package.yaml by hpack version 0.34.5. -- -- see: https://github.com/sol/hpack name: fakedata-version: 1.0.1+version: 1.0.2 synopsis: Library for producing fake data description: Please see the README on GitHub at <https://github.com/psibi/fakedata#readme> category: Random, Fake, FakeData@@ -677,7 +677,8 @@ hs-source-dirs: src build-depends:- attoparsec+ aeson+ , attoparsec , base >=4.7 && <5 , bytestring , containers@@ -793,6 +794,7 @@ hspec-discover:hspec-discover build-depends: QuickCheck+ , aeson , attoparsec , base >=4.7 && <5 , bytestring@@ -825,7 +827,8 @@ bench ghc-options: -O2 build-depends:- attoparsec+ aeson+ , attoparsec , base >=4.7 && <5 , bytestring , containers
src/Faker.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE InstanceSigs #-}@@ -45,8 +46,11 @@ import Data.Vector (Vector) import Data.Word (Word64) import Data.Yaml (Value)-import Faker.Internal.Types (CacheFieldKey, CacheFileKey)+import Faker.Internal.Types (CacheFieldKey, CacheFileKey, AesonKey) import System.Random (StdGen, mkStdGen, newStdGen, split)+#if MIN_VERSION_aeson(2,0,0)+import qualified Data.Aeson.Key as K+#endif data FakerSettings = FakerSettings { fslocale :: !Text -- ^ Locale settings for your fake data source.@@ -71,9 +75,9 @@ -- find the fake data source for your -- localization. | InvalidField String- Text -- ^ The 'String' represents the field it is- -- trying to resolve and the 'Text' field- -- is something you passed on.+ AesonKey -- ^ The 'String' represents the field it is+ -- trying to resolve and the 'Key' field+ -- is something you passed on. | NoDataFound FakerSettings -- ^ This is thrown when you have no -- data. This may likely happen for -- locales other than `en`.@@ -199,7 +203,7 @@ pure b) instance Monad m => Applicative (FakeT m) where- {-# INLINE pure #-} + {-# INLINE pure #-} pure x = FakeT (\_ -> pure x) {-# INLINE (<*>) #-} (<*>) = ap
src/Faker/Internal.hs view
@@ -2,12 +2,14 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE DeriveFunctor #-} {-# LANGUAGE BangPatterns #-}+{-# LANGUAGE CPP #-} -- | Internal module module Faker.Internal ( Unresolved(..) , Regex(..) , RegexFakeValue(..)+ , AesonKey(..) , rvec , insertToCache , presentInCache@@ -23,6 +25,7 @@ , resolveFields , genericResolver , genericResolver'+ , getLocaleKey ) where import Config@@ -37,12 +40,17 @@ import Data.Vector (Vector, (!)) import Data.Word (Word64) import Faker-import Faker.Internal.Types (CacheFieldKey(..))+import Faker.Internal.Types (CacheFieldKey(..), AesonKey(..)+ , aesonKeyFromText+ , aesonKeyToText) import System.Random (StdGen, mkStdGen, randomR, split) import Text.StringRandom (stringRandom) import Fakedata.Parser import Data.Attoparsec.Text as P import Control.Monad (when)+#if MIN_VERSION_aeson(2,0,0)+import qualified Data.Aeson.Key as K+#endif newtype Unresolved a = Unresolved { unresolvedField :: a@@ -60,6 +68,14 @@ return = pure (Unresolved f) >>= f1 = f1 f +-- | Get the Locale settings for your fake data source as a YAML key.+getLocaleKey :: FakerSettings -> AesonKey+#if MIN_VERSION_aeson(2,0,0)+getLocaleKey settings = K.fromText (getLocale settings)+#else+getLocaleKey settings = getLocale settings+#endif+ -- These are the functions which needs to be remodified -- rvec, randomVec, randomUnresolvedvec, randomUnresolvedVecwithoutvector, unresolvedResolver, unresolfvedResolverWithoutVector rvec :: (MonadThrow m, MonadIO m) => FakerSettings -> Vector a -> m a@@ -73,7 +89,7 @@ cachedRandomVec :: (MonadThrow m, MonadIO m) => Text- -> Text+ -> AesonKey -> (FakerSettings -> m (Vector Text)) -> FakerSettings -> m Text@@ -103,9 +119,9 @@ cachedRandomUnresolvedVec :: (MonadThrow m, MonadIO m) => Text- -> Text+ -> AesonKey -> (FakerSettings -> m (Unresolved (Vector Text)))- -> (FakerSettings -> Text -> m Text)+ -> (FakerSettings -> AesonKey -> m Text) -> FakerSettings -> m Text cachedRandomUnresolvedVec sdata field provider resolverFn settings = do@@ -123,7 +139,7 @@ (MonadThrow m, MonadIO m) => FakerSettings -> (FakerSettings -> m (Unresolved (Vector Text)))- -> (FakerSettings -> Text -> m Text)+ -> (FakerSettings -> AesonKey -> m Text) -> m Text randomUnresolvedVec settings provider resolverFn = do items <- provider settings@@ -132,9 +148,9 @@ cachedRandomUnresolvedVecWithoutVector :: (MonadThrow m, MonadIO m) => Text- -> Text+ -> AesonKey -> (FakerSettings -> m (Unresolved Text))- -> (FakerSettings -> Text -> m Text)+ -> (FakerSettings -> AesonKey -> m Text) -> FakerSettings -> m Text cachedRandomUnresolvedVecWithoutVector sdata field provider resolverFn settings = do@@ -152,7 +168,7 @@ (MonadThrow m, MonadIO m) => FakerSettings -> (FakerSettings -> m (Unresolved Text))- -> (FakerSettings -> Text -> m Text)+ -> (FakerSettings -> AesonKey -> m Text) -> m Text randomUnresolvedVecWithoutVector settings provider resolverFn = do items <- provider settings@@ -162,7 +178,7 @@ (MonadThrow m, MonadIO m) => FakerSettings -> Unresolved (Vector Text)- -> (FakerSettings -> Text -> m Text)+ -> (FakerSettings -> AesonKey -> m Text) -> m Text resolveUnresolved settings (Unresolved unres) resolverFn = do let unresLen = V.length unres@@ -174,13 +190,13 @@ Left err -> throwM $ ParseError err Right vals -> combineFakeIRValue settings resolverFn vals -resolveFakeIRValue :: (MonadIO m) => FakerSettings -> (FakerSettings -> Text -> m Text) -> (FakeIRValue,StdGen) -> m Text+resolveFakeIRValue :: (MonadIO m) => FakerSettings -> (FakerSettings -> AesonKey -> m Text) -> (FakeIRValue,StdGen) -> m Text resolveFakeIRValue _ _ (Literal txt,_) = pure txt resolveFakeIRValue settings _ (Hash num,_) = pure $ resolveHash settings num resolveFakeIRValue settings _ (Ques num,_) = pure $ resolveQues settings num-resolveFakeIRValue settings resolverFn (Resolve text,gen) = resolverFn (setRandomGen gen settings) text+resolveFakeIRValue settings resolverFn (Resolve text,gen) = resolverFn (setRandomGen gen settings) (aesonKeyFromText text) -combineFakeIRValue :: (MonadIO m) => FakerSettings -> (FakerSettings -> Text -> m Text) -> [FakeIRValue] -> m Text+combineFakeIRValue :: (MonadIO m) => FakerSettings -> (FakerSettings -> AesonKey -> m Text) -> [FakeIRValue] -> m Text combineFakeIRValue settings resolverFn xs = do vals <- mapM (resolveFakeIRValue settings resolverFn) (zip xs (stdgens (getRandomGen settings))) pure $ T.concat vals@@ -190,14 +206,14 @@ Left err -> throwM $ ParseError err Right vals -> pure vals -genericResolver :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> (FakerSettings -> Text -> m Text) -> m Text-genericResolver settings txt resolverFn = combineFakeIRValue settings resolverFn [Resolve txt]+genericResolver :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> (FakerSettings -> AesonKey -> m Text) -> m Text+genericResolver settings txt resolverFn = combineFakeIRValue settings resolverFn [Resolve (aesonKeyToText txt)] -genericResolver' :: (MonadIO m, MonadThrow m) => (FakerSettings -> Text -> m Text) -> FakerSettings -> Text -> m Text+genericResolver' :: (MonadIO m, MonadThrow m) => (FakerSettings -> AesonKey -> m Text) -> FakerSettings -> AesonKey -> m Text genericResolver' resolverFn settings txt = genericResolver settings txt resolverFn -- resolveHash settings 3--- "234" +-- "234" resolveHash :: FakerSettings -> Int -> Text resolveHash settings num = T.pack $ helper settings num mempty where@@ -237,7 +253,7 @@ unresolvedResolver :: (MonadThrow m, MonadIO m) => (FakerSettings -> m (Unresolved (Vector Text)))- -> (FakerSettings -> Text -> m Text)+ -> (FakerSettings -> AesonKey -> m Text) -> (FakerSettings -> m Text) unresolvedResolver provider resolverFn = \settings -> randomUnresolvedVec settings provider resolverFn@@ -245,7 +261,7 @@ unresolvedResolverWithoutVector :: (MonadThrow m, MonadIO m) => (FakerSettings -> m (Unresolved Text))- -> (FakerSettings -> Text -> m Text)+ -> (FakerSettings -> AesonKey -> m Text) -> (FakerSettings -> m Text) unresolvedResolverWithoutVector provider resolverFn = \settings -> randomUnresolvedVecWithoutVector settings provider resolverFn@@ -270,7 +286,7 @@ refinedText :: Text -> Text refinedText = T.pack . refinedString . T.unpack -presentInCache :: Text -> Text -> FakerSettings -> IO (Maybe (Vector Text))+presentInCache :: Text -> AesonKey -> FakerSettings -> IO (Maybe (Vector Text)) presentInCache sdata field settings = do let key = CacheFieldKey@@ -278,7 +294,7 @@ hmap <- getCacheField settings pure $ HM.lookup key hmap -insertToCache :: Text -> Text -> FakerSettings -> (Vector Text) -> IO ()+insertToCache :: Text -> AesonKey -> FakerSettings -> (Vector Text) -> IO () insertToCache sdata field settings vec = do let key = CacheFieldKey@@ -308,7 +324,7 @@ cachedRegex :: (MonadThrow m, MonadIO m) => Text- -> Text+ -> AesonKey -> (FakerSettings -> m Regex) -> FakerSettings -> m RegexFakeValue@@ -337,4 +353,3 @@ generateRegexData settings provider = do items <- provider settings pure $ generateRegex settings items-
src/Faker/Internal/Types.hs view
@@ -1,13 +1,37 @@ {-# LANGUAGE BangPatterns #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveAnyClass #-}+{-# LANGUAGE CPP #-} module Faker.Internal.Types where import Data.Hashable import Data.Text (Text) import GHC.Generics+#if MIN_VERSION_aeson(2,0,0)+import qualified Data.Aeson.Key as K+#endif +#if MIN_VERSION_aeson(2,0,0)+type AesonKey = K.Key+#else+type AesonKey = Text+#endif++aesonKeyToText :: AesonKey -> Text+#if MIN_VERSION_aeson(2,0,0)+aesonKeyToText key = K.toText key+#else+aesonKeyToText key = key+#endif++aesonKeyFromText :: Text -> AesonKey+#if MIN_VERSION_aeson(2,0,0)+aesonKeyFromText key = K.fromText key+#else+aesonKeyFromText key = key+#endif+ data SourceData = Address | Name@@ -199,7 +223,7 @@ data CacheFieldKey = CacheFieldKey { ckSource :: !Text- , ckField :: !Text+ , ckField :: !AesonKey , ckLocale :: !Text } deriving (Show, Eq, Ord, Generic, Hashable)
src/Faker/Provider/Address.hs view
@@ -18,16 +18,17 @@ import Faker.Provider.TH import Faker.Provider.Name (nameNameProvider, resolveNameField) + parseAddress :: FromJSON a => FakerSettings -> Value -> Parser a parseAddress settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" address <- faker .: "address" pure address parseAddress settings val = fail $ "expected Object, but got " <> (show val) parseAddressField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseAddressField settings txt val = do address <- parseAddress settings val field <- address .:? txt .!= mempty@@ -36,7 +37,7 @@ parseUnresolvedAddressField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedAddressField settings txt val = do@@ -315,11 +316,11 @@ -- > resolveCommunityText "#{community_prefix} #{community_suffix}" resolveAddressText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveAddressText = genericResolver' resolveAddressField resolveAddressField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveAddressField settings field@"community_suffix" = cachedRandomVec "address" field communitySuffixProvider settings resolveAddressField settings field@"community_prefix" =
src/Faker/Provider/Adjective.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseAdjective :: FromJSON a => FakerSettings -> Value -> Parser a parseAdjective settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" adjective <- faker .: "adjective" pure adjective parseAdjective settings val = fail $ "expected Object, but got " <> (show val) parseAdjectiveField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseAdjectiveField settings txt val = do adjective <- parseAdjective settings val field <- adjective .:? txt .!= mempty pure field parseAdjectiveFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseAdjectiveFields settings txts val = do adjective <- parseAdjective settings val helper adjective txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedAdjectiveFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedAdjectiveFields settings txts val = do adjective <- parseAdjective settings val helper adjective txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -74,11 +75,3 @@ $(genParser "adjective" "negative") $(genProvider "adjective" "negative")--------
src/Faker/Provider/Ancient.hs view
@@ -14,16 +14,17 @@ import Faker import Faker.Internal + parseAncient :: FromJSON a => FakerSettings -> Value -> Parser a parseAncient settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" ancient <- faker .: "ancient" pure ancient parseAncient settings val = fail $ "expected Object, but got " <> (show val) parseAncientField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseAncientField settings txt val = do ancient <- parseAncient settings val field <- ancient .:? txt .!= mempty
src/Faker/Provider/Animal.hs view
@@ -14,9 +14,10 @@ import Faker import Faker.Internal + parseAnimal :: FromJSON a => FakerSettings -> Value -> Parser a parseAnimal settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" creature <- faker .: "creature" animal <- creature .: "animal"@@ -24,7 +25,7 @@ parseAnimal settings val = fail $ "expected Object, but got " <> (show val) parseAnimalField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseAnimalField settings txt val = do animal <- parseAnimal settings val field <- animal .:? txt .!= mempty
src/Faker/Provider/App.hs view
@@ -18,16 +18,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseApp :: FromJSON a => FakerSettings -> Value -> Parser a parseApp settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" app <- faker .: "app" pure app parseApp settings val = fail $ "expected Object, but got " <> (show val) parseAppField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseAppField settings txt val = do app <- parseApp settings val field <- app .:? txt .!= mempty@@ -36,7 +37,7 @@ parseUnresolvedAppField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedAppField settings txt val = do@@ -56,10 +57,10 @@ $(genAppProviderUnresolved "author") -resolveAppText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveAppText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveAppText = genericResolver' resolveAppField -resolveAppField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveAppField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveAppField settings "Name.name" = cachedRandomUnresolvedVec "name"
src/Faker/Provider/Appliance.hs view
@@ -13,16 +13,17 @@ import Faker import Faker.Internal + parseAppliance :: FromJSON a => FakerSettings -> Value -> Parser a parseAppliance settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" appliance <- faker .: "appliance" pure appliance parseAppliance settings val = fail $ "expected Object, but got " <> (show val) parseApplianceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseApplianceField settings txt val = do appliance <- parseAppliance settings val field <- appliance .:? txt .!= mempty
src/Faker/Provider/AquaTeenHungerForce.hs view
@@ -13,16 +13,17 @@ import Faker import Faker.Internal + parseAthf :: FromJSON a => FakerSettings -> Value -> Parser a parseAthf settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" athf <- faker .: "aqua_teen_hunger_force" pure athf parseAthf settings val = fail $ "expected Object, but got " <> (show val) parseAthfField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseAthfField settings txt val = do athf <- parseAthf settings val field <- athf .:? txt .!= mempty
src/Faker/Provider/Artist.hs view
@@ -13,16 +13,17 @@ import Faker import Faker.Internal + parseArtist :: FromJSON a => FakerSettings -> Value -> Parser a parseArtist settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" artist <- faker .: "artist" pure artist parseArtist settings val = fail $ "expected Object, but got " <> (show val) parseArtistField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseArtistField settings txt val = do artist <- parseArtist settings val field <- artist .:? txt .!= mempty
src/Faker/Provider/BackToTheFuture.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBackToTheFuture :: FromJSON a => FakerSettings -> Value -> Parser a parseBackToTheFuture settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" backToTheFuture <- faker .: "back_to_the_future" pure backToTheFuture@@ -24,19 +25,19 @@ fail $ "expected Object, but got " <> (show val) parseBackToTheFutureField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBackToTheFutureField settings txt val = do backToTheFuture <- parseBackToTheFuture settings val field <- backToTheFuture .:? txt .!= mempty pure field parseBackToTheFutureFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseBackToTheFutureFields settings txts val = do backToTheFuture <- parseBackToTheFuture settings val helper backToTheFuture txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Bank.hs view
@@ -13,16 +13,17 @@ import Faker import Faker.Internal + parseBank :: FromJSON a => FakerSettings -> Value -> Parser a parseBank settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" bank <- faker .: "bank" pure bank parseBank settings val = fail $ "expected Object, but got " <> (show val) parseBankField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBankField settings txt val = do bank <- parseBank settings val field <- bank .:? txt .!= mempty
src/Faker/Provider/Barcode.hs view
@@ -15,28 +15,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBarcode :: FromJSON a => FakerSettings -> Value -> Parser a parseBarcode settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" barcode <- faker .: "barcode" pure barcode parseBarcode settings val = fail $ "expected Object, but got " <> (show val) parseBarcodeField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBarcodeField settings txt val = do barcode <- parseBarcode settings val field <- barcode .:? txt .!= mempty pure field parseBarcodeFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseBarcodeFields settings txts val = do barcode <- parseBarcode settings val helper barcode txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -46,7 +47,7 @@ parseUnresolvedBarcodeField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedBarcodeField settings txt val = do@@ -87,8 +88,8 @@ $(genProvidersSingleUnresolved "barcode" ["issn"]) -resolveBarcodeText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveBarcodeText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveBarcodeText = genericResolver' resolveBarcodeField -resolveBarcodeField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveBarcodeField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveBarcodeField settings str = throwM $ InvalidField "barcode" str
src/Faker/Provider/Basketball.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBasketball :: FromJSON a => FakerSettings -> Value -> Parser a parseBasketball settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" basketball <- faker .: "basketball" pure basketball parseBasketball settings val = fail $ "expected Object, but got " <> (show val) parseBasketballField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBasketballField settings txt val = do basketball <- parseBasketball settings val field <- basketball .:? txt .!= mempty pure field parseBasketballFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseBasketballFields settings txts val = do basketball <- parseBasketball settings val helper basketball txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Beer.hs view
@@ -15,16 +15,17 @@ import Faker.Internal import Faker.Provider.TH + parseBeer :: FromJSON a => FakerSettings -> Value -> Parser a parseBeer settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" beer <- faker .: "beer" pure beer parseBeer settings val = fail $ "expected Object, but got " <> (show val) parseBeerField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBeerField settings txt val = do beer <- parseBeer settings val field <- beer .:? txt .!= mempty
src/Faker/Provider/BigBangTheory.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBigBangTheory :: FromJSON a => FakerSettings -> Value -> Parser a parseBigBangTheory settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" bigBangTheory <- faker .: "big_bang_theory" pure bigBangTheory parseBigBangTheory settings val = fail $ "expected Object, but got " <> (show val) parseBigBangTheoryField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBigBangTheoryField settings txt val = do bigBangTheory <- parseBigBangTheory settings val field <- bigBangTheory .:? txt .!= mempty pure field parseBigBangTheoryFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseBigBangTheoryFields settings txts val = do bigBangTheory <- parseBigBangTheory settings val helper bigBangTheory txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -53,14 +54,3 @@ $(genParser "bigBangTheory" "quotes") $(genProvider "bigBangTheory" "quotes")-----------
src/Faker/Provider/Bird.hs view
@@ -16,9 +16,10 @@ import Language.Haskell.TH import Faker.Provider.Name (resolveNameField) + parseBird :: FromJSON a => FakerSettings -> Value -> Parser a parseBird settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" creature <- faker .: "creature" bird <- creature .: "bird"@@ -26,19 +27,19 @@ parseBird settings val = fail $ "expected Object, but got " <> (show val) parseBirdField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBirdField settings txt val = do bird <- parseBird settings val field <- bird .:? txt .!= mempty pure field parseBirdFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseBirdFields settings txts val = do bird <- parseBird settings val helper bird txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -49,7 +50,7 @@ parseUnresolvedBirdField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedBirdField settings txt val = do@@ -62,14 +63,14 @@ parseUnresolvedBirdFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedBirdFields settings txts val = do bird <- parseBird settings val helper bird txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -121,10 +122,10 @@ $(genProviderUnresolved "bird" "implausible_common_names") -resolveBirdText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveBirdText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveBirdText = genericResolver' resolveBirdField -resolveBirdField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveBirdField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveBirdField settings field@"geo" = cachedRandomVec "bird" field birdGeoProvider settings resolveBirdField settings field@"adjective" =
src/Faker/Provider/Blood.hs view
@@ -15,28 +15,29 @@ import Language.Haskell.TH import Control.Monad.IO.Class + parseBlood :: FromJSON a => FakerSettings -> Value -> Parser a parseBlood settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" blood <- faker .: "blood" pure blood parseBlood settings val = fail $ "expected Object, but got " <> (show val) parseBloodField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBloodField settings txt val = do blood <- parseBlood settings val field <- blood .:? txt .!= mempty pure field parseBloodFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseBloodFields settings txts val = do blood <- parseBlood settings val helper blood txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -46,7 +47,7 @@ parseUnresolvedBloodField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedBloodField settings txt val = do@@ -66,11 +67,11 @@ $(genProviderUnresolved "blood" "group") -resolveBloodText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveBloodText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveBloodText = genericResolver' resolveBloodField resolveBloodField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveBloodField settings field@"type" = cachedRandomVec "blood" field bloodTypeProvider settings resolveBloodField settings field@"rh_factor" =
src/Faker/Provider/BoJackHorseman.hs view
@@ -13,9 +13,10 @@ import Faker import Faker.Internal + parseBoJackHorseman :: FromJSON a => FakerSettings -> Value -> Parser a parseBoJackHorseman settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" boJackHorseman <- faker .: "bojack_horseman" pure boJackHorseman@@ -23,7 +24,7 @@ fail $ "expected Object, but got " <> (show val) parseBoJackHorsemanField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBoJackHorsemanField settings txt val = do boJackHorseman <- parseBoJackHorseman settings val field <- boJackHorseman .:? txt .!= mempty
src/Faker/Provider/Book.hs view
@@ -17,16 +17,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBook :: FromJSON a => FakerSettings -> Value -> Parser a parseBook settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" book <- faker .: "book" pure book parseBook settings val = fail $ "expected Object, but got " <> (show val) parseBookField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBookField settings txt val = do book <- parseBook settings val field <- book .:? txt .!= mempty@@ -35,7 +36,7 @@ parseUnresolvedBookField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedBookField settings txt val = do@@ -82,10 +83,10 @@ resolveBookText settings) -resolveBookText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveBookText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveBookText = genericResolver' resolveBookField -resolveBookField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveBookField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveBookField settings "Name.name" = cachedRandomUnresolvedVec "name"
src/Faker/Provider/BossaNova.hs view
@@ -16,16 +16,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBossaNova :: FromJSON a => FakerSettings -> Value -> Parser a parseBossaNova settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" bossaNova <- faker .: "bossa_nova" pure bossaNova parseBossaNova settings val = fail $ "expected Object, but got " <> (show val) parseBossaNovaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBossaNovaField settings txt val = do bossaNova <- parseBossaNova settings val field <- bossaNova .:? txt .!= mempty
src/Faker/Provider/BreakingBad.hs view
@@ -16,16 +16,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBreakingBad :: FromJSON a => FakerSettings -> Value -> Parser a parseBreakingBad settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" breakingBad <- faker .: "breaking_bad" pure breakingBad parseBreakingBad settings val = fail $ "expected Object, but got " <> (show val) parseBreakingBadField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBreakingBadField settings txt val = do breakingBad <- parseBreakingBad settings val field <- breakingBad .:? txt .!= mempty
src/Faker/Provider/Buffy.hs view
@@ -16,16 +16,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBuffy :: FromJSON a => FakerSettings -> Value -> Parser a parseBuffy settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" buffy <- faker .: "buffy" pure buffy parseBuffy settings val = fail $ "expected Object, but got " <> (show val) parseBuffyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBuffyField settings txt val = do buffy <- parseBuffy settings val field <- buffy .:? txt .!= mempty@@ -34,7 +35,7 @@ parseUnresolvedBuffyField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedBuffyField settings txt val = do
src/Faker/Provider/Business.hs view
@@ -16,16 +16,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseBusiness :: FromJSON a => FakerSettings -> Value -> Parser a parseBusiness settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" business <- faker .: "business" pure business parseBusiness settings val = fail $ "expected Object, but got " <> (show val) parseBusinessField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseBusinessField settings txt val = do business <- parseBusiness settings val field <- business .:? txt .!= mempty
src/Faker/Provider/Camera.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCamera :: FromJSON a => FakerSettings -> Value -> Parser a parseCamera settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" camera <- faker .: "camera" pure camera parseCamera settings val = fail $ "expected Object, but got " <> (show val) parseCameraField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCameraField settings txt val = do camera <- parseCamera settings val field <- camera .:? txt .!= mempty pure field parseCameraFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseCameraFields settings txts val = do camera <- parseCamera settings val helper camera txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedCameraFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedCameraFields settings txts val = do camera <- parseCamera settings val helper camera txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -78,11 +79,3 @@ $(genParser "camera" "brand_with_model") $(genProvider "camera" "brand_with_model")--------
src/Faker/Provider/Cannabis.hs view
@@ -16,16 +16,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCannabis :: FromJSON a => FakerSettings -> Value -> Parser a parseCannabis settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" cannabis <- faker .: "cannabis" pure cannabis parseCannabis settings val = fail $ "expected Object, but got " <> (show val) parseCannabisField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCannabisField settings txt val = do cannabis <- parseCannabis settings val field <- cannabis .:? txt .!= mempty
src/Faker/Provider/Cat.hs view
@@ -15,9 +15,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCat :: FromJSON a => FakerSettings -> Value -> Parser a parseCat settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" creature <- faker .: "creature" cat <- creature .: "cat"@@ -25,7 +26,7 @@ parseCat settings val = fail $ "expected Object, but got " <> (show val) parseCatField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCatField settings txt val = do cat <- parseCat settings val field <- cat .:? txt .!= mempty
src/Faker/Provider/Chiquito.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseChiquito :: FromJSON a => FakerSettings -> Value -> Parser a parseChiquito settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" chiquito <- faker .: "chiquito" pure chiquito parseChiquito settings val = fail $ "expected Object, but got " <> (show val) parseChiquitoField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseChiquitoField settings txt val = do chiquito <- parseChiquito settings val field <- chiquito .:? txt .!= mempty pure field parseChiquitoFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseChiquitoFields settings txts val = do chiquito <- parseChiquito settings val helper chiquito txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -63,14 +64,3 @@ $(genParser "chiquito" "jokes") $(genProvider "chiquito" "jokes")-----------
src/Faker/Provider/ChuckNorris.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseChuckNorris :: FromJSON a => FakerSettings -> Value -> Parser a parseChuckNorris settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" chuckNorris <- faker .: "chuck_norris" pure chuckNorris parseChuckNorris settings val = fail $ "expected Object, but got " <> (show val) parseChuckNorrisField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseChuckNorrisField settings txt val = do chuckNorris <- parseChuckNorris settings val field <- chuckNorris .:? txt .!= mempty
src/Faker/Provider/ClashOfClans.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseClashOfClans :: FromJSON a => FakerSettings -> Value -> Parser a parseClashOfClans settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" clashOfClans <- games .: "clash_of_clans"@@ -24,19 +25,19 @@ parseClashOfClans settings val = fail $ "expected Object, but got " <> (show val) parseClashOfClansField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseClashOfClansField settings txt val = do clashOfClans <- parseClashOfClans settings val field <- clashOfClans .:? txt .!= mempty pure field parseClashOfClansFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseClashOfClansFields settings txts val = do clashOfClans <- parseClashOfClans settings val helper clashOfClans txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -49,14 +50,14 @@ parseUnresolvedClashOfClansFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedClashOfClansFields settings txts val = do clashOfClans <- parseClashOfClans settings val helper clashOfClans txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v
src/Faker/Provider/Code.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCode :: FromJSON a => FakerSettings -> Value -> Parser a parseCode settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" code <- faker .: "code" pure code parseCode settings val = fail $ "expected Object, but got " <> (show val) parseCodeField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCodeField settings txt val = do code <- parseCode settings val field <- code .:? txt .!= mempty
src/Faker/Provider/Coffee.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCoffee :: FromJSON a => FakerSettings -> Value -> Parser a parseCoffee settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" coffee <- faker .: "coffee" pure coffee parseCoffee settings val = fail $ "expected Object, but got " <> (show val) parseCoffeeField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCoffeeField settings txt val = do coffee <- parseCoffee settings val field <- coffee .:? txt .!= mempty pure field parseCoffeeFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseCoffeeFields settings txts val = do coffee <- parseCoffee settings val helper coffee txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedCoffeeField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedCoffeeField settings txt val = do@@ -177,11 +178,11 @@ $(genProviders "coffee" ["regions", "india"]) resolveCoffeeText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveCoffeeText = genericResolver' resolveCoffeeField resolveCoffeeField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveCoffeeField settings field@"name_1" = cachedRandomVec "coffee" field coffeeName1Provider settings resolveCoffeeField settings field@"name_2" =
src/Faker/Provider/Coin.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCoin :: FromJSON a => FakerSettings -> Value -> Parser a parseCoin settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" coin <- faker .: "coin" pure coin parseCoin settings val = fail $ "expected Object, but got " <> (show val) parseCoinField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCoinField settings txt val = do coin <- parseCoin settings val field <- coin .:? txt .!= mempty
src/Faker/Provider/Color.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseColor :: FromJSON a => FakerSettings -> Value -> Parser a parseColor settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" color <- faker .: "color" pure color parseColor settings val = fail $ "expected Object, but got " <> (show val) parseColorField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseColorField settings txt val = do color <- parseColor settings val field <- color .:? txt .!= mempty
src/Faker/Provider/Commerce.hs view
@@ -15,28 +15,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCommerce :: FromJSON a => FakerSettings -> Value -> Parser a parseCommerce settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" commerce <- faker .: "commerce" pure commerce parseCommerce settings val = fail $ "expected Object, but got " <> (show val) parseCommerceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCommerceField settings txt val = do commerce <- parseCommerce settings val field <- commerce .:? txt .!= mempty pure field parseCommerceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseCommerceFields settings txts val = do commerce <- parseCommerce settings val helper commerce txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Community.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCommunity :: FromJSON a => FakerSettings -> Value -> Parser a parseCommunity settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" community <- faker .: "community" pure community parseCommunity settings val = fail $ "expected Object, but got " <> (show val) parseCommunityField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCommunityField settings txt val = do community <- parseCommunity settings val field <- community .:? txt .!= mempty
src/Faker/Provider/Company.hs view
@@ -18,16 +18,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCompany :: FromJSON a => FakerSettings -> Value -> Parser a parseCompany settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" company <- faker .: "company" pure company parseCompany settings val = fail $ "expected Object, but got " <> (show val) parseCompanyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCompanyField settings txt val = do company <- parseCompany settings val field <- company .:? txt .!= mempty@@ -36,7 +37,7 @@ parseUnresolvedCompanyField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedCompanyField settings txt val = do@@ -98,11 +99,11 @@ $(genProvider "company" "category") resolveCompanyText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveCompanyText = genericResolver' resolveCompanyField resolveCompanyField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveCompanyField settings "Name.last_name" = cachedRandomVec "name" "last_name" nameLastNameProvider settings resolveCompanyField settings "Name.first_name" =
src/Faker/Provider/Compass.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCompass :: FromJSON a => FakerSettings -> Value -> Parser a parseCompass settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" compass <- faker .: "compass" pure compass parseCompass settings val = fail $ "expected Object, but got " <> (show val) parseCompassField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCompassField settings txt val = do compass <- parseCompass settings val field <- compass .:? txt .!= mempty pure field parseCompassFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseCompassFields settings txts val = do compass <- parseCompass settings val helper compass txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedCompassField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedCompassField settings txt val = do@@ -116,7 +117,7 @@ $(genProviders "compass" ["quarter-wind", "azimuth"]) resolveCompassText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveCompassText = genericResolver' resolveCompassField cardinalProvider ::@@ -160,7 +161,7 @@ pure $ cw <> ca <> caz <> qw resolveCompassField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveCompassField settings field@"cardinal" = cachedRandomVec "compass" field cardinalProvider settings resolveCompassField settings field@"ordinal" =
src/Faker/Provider/Computer.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseComputer :: FromJSON a => FakerSettings -> Value -> Parser a parseComputer settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" computer <- faker .: "computer" pure computer parseComputer settings val = fail $ "expected Object, but got " <> (show val) parseComputerField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseComputerField settings txt val = do computer <- parseComputer settings val field <- computer .:? txt .!= mempty pure field parseComputerFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseComputerFields settings txts val = do computer <- parseComputer settings val helper computer txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Conan.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseConan :: FromJSON a => FakerSettings -> Value -> Parser a parseConan settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" conan <- faker .: "conan" pure conan parseConan settings val = fail $ "expected Object, but got " <> (show val) parseConanField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseConanField settings txt val = do conan <- parseConan settings val field <- conan .:? txt .!= mempty pure field parseConanFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseConanFields settings txts val = do conan <- parseConan settings val helper conan txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedConanFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedConanFields settings txts val = do conan <- parseConan settings val helper conan txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -78,11 +79,3 @@ $(genParser "conan" "vehicles") $(genProvider "conan" "vehicles")--------
src/Faker/Provider/Construction.hs view
@@ -15,9 +15,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseConstruction :: FromJSON a => FakerSettings -> Value -> Parser a parseConstruction settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" construction <- faker .: "construction" pure construction@@ -25,7 +26,7 @@ fail $ "expected Object, but got " <> (show val) parseConstructionField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseConstructionField settings txt val = do construction <- parseConstruction settings val field <- construction .:? txt .!= mempty
src/Faker/Provider/Control.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseControl :: FromJSON a => FakerSettings -> Value -> Parser a parseControl settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" control <- games .: "control"@@ -24,19 +25,19 @@ parseControl settings val = fail $ "expected Object, but got " <> (show val) parseControlField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseControlField settings txt val = do control <- parseControl settings val field <- control .:? txt .!= mempty pure field parseControlFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseControlFields settings txts val = do control <- parseControl settings val helper control txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Cosmere.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCosmere :: FromJSON a => FakerSettings -> Value -> Parser a parseCosmere settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" cosmere <- faker .: "cosmere" pure cosmere parseCosmere settings val = fail $ "expected Object, but got " <> (show val) parseCosmereField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCosmereField settings txt val = do cosmere <- parseCosmere settings val field <- cosmere .:? txt .!= mempty
src/Faker/Provider/CryptoCoin.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCryptoCoin :: FromJSON a => FakerSettings -> Value -> Parser a parseCryptoCoin settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" cryptoCoin <- faker .: "crypto_coin" pure cryptoCoin parseCryptoCoin settings val = fail $ "expected Object, but got " <> (show val) parseCryptoCoinField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCryptoCoinField settings txt val = do cryptoCoin <- parseCryptoCoin settings val field <- cryptoCoin .:? txt .!= mempty
src/Faker/Provider/CultureSeries.hs view
@@ -15,9 +15,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCultureSeries :: FromJSON a => FakerSettings -> Value -> Parser a parseCultureSeries settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" cultureSeries <- faker .: "culture_series" pure cultureSeries@@ -25,7 +26,7 @@ fail $ "expected Object, but got " <> (show val) parseCultureSeriesField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCultureSeriesField settings txt val = do cultureSeries <- parseCultureSeries settings val field <- cultureSeries .:? txt .!= mempty
src/Faker/Provider/Currency.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseCurrency :: FromJSON a => FakerSettings -> Value -> Parser a parseCurrency settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" currency <- faker .: "currency" pure currency parseCurrency settings val = fail $ "expected Object, but got " <> (show val) parseCurrencyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCurrencyField settings txt val = do currency <- parseCurrency settings val field <- currency .:? txt .!= mempty
src/Faker/Provider/DcComics.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDcComics :: FromJSON a => FakerSettings -> Value -> Parser a parseDcComics settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" dcComics <- faker .: "dc_comics" pure dcComics parseDcComics settings val = fail $ "expected Object, but got " <> (show val) parseDcComicsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDcComicsField settings txt val = do dcComics <- parseDcComics settings val field <- dcComics .:? txt .!= mempty
src/Faker/Provider/Demographic.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDemographic :: FromJSON a => FakerSettings -> Value -> Parser a parseDemographic settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" demographic <- faker .: "demographic" pure demographic parseDemographic settings val = fail $ "expected Object, but got " <> (show val) parseDemographicField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDemographicField settings txt val = do demographic <- parseDemographic settings val field <- demographic .:? txt .!= mempty
src/Faker/Provider/Departed.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDeparted :: FromJSON a => FakerSettings -> Value -> Parser a parseDeparted settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" departed <- faker .: "departed" pure departed parseDeparted settings val = fail $ "expected Object, but got " <> (show val) parseDepartedField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDepartedField settings txt val = do departed <- parseDeparted settings val field <- departed .:? txt .!= mempty pure field parseDepartedFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseDepartedFields settings txts val = do departed <- parseDeparted settings val helper departed txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -58,14 +59,3 @@ $(genParser "departed" "quotes") $(genProvider "departed" "quotes")-----------
src/Faker/Provider/Dessert.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDessert :: FromJSON a => FakerSettings -> Value -> Parser a parseDessert settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" dessert <- faker .: "dessert" pure dessert parseDessert settings val = fail $ "expected Object, but got " <> (show val) parseDessertField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDessertField settings txt val = do dessert <- parseDessert settings val field <- dessert .:? txt .!= mempty
src/Faker/Provider/Device.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDevice :: FromJSON a => FakerSettings -> Value -> Parser a parseDevice settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" device <- faker .: "device" pure device parseDevice settings val = fail $ "expected Object, but got " <> (show val) parseDeviceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDeviceField settings txt val = do device <- parseDevice settings val field <- device .:? txt .!= mempty
src/Faker/Provider/Dnd.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDnd :: FromJSON a => FakerSettings -> Value -> Parser a parseDnd settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" dnd <- faker .: "dnd" pure dnd parseDnd settings val = fail $ "expected Object, but got " <> (show val) parseDndField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDndField settings txt val = do dnd <- parseDnd settings val field <- dnd .:? txt .!= mempty pure field parseDndFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseDndFields settings txts val = do dnd <- parseDnd settings val helper dnd txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -83,14 +84,3 @@ $(genParser "dnd" "ranged_weapons") $(genProvider "dnd" "ranged_weapons")-----------
src/Faker/Provider/Dog.hs view
@@ -15,9 +15,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDog :: FromJSON a => FakerSettings -> Value -> Parser a parseDog settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" creature <- faker .: "creature" dog <- creature .: "dog"@@ -25,7 +26,7 @@ parseDog settings val = fail $ "expected Object, but got " <> (show val) parseDogField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDogField settings txt val = do dog <- parseDog settings val field <- dog .:? txt .!= mempty
src/Faker/Provider/Doraemon.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDoraemon :: FromJSON a => FakerSettings -> Value -> Parser a parseDoraemon settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" doraemon <- faker .: "doraemon" pure doraemon parseDoraemon settings val = fail $ "expected Object, but got " <> (show val) parseDoraemonField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDoraemonField settings txt val = do doraemon <- parseDoraemon settings val field <- doraemon .:? txt .!= mempty pure field parseDoraemonFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseDoraemonFields settings txts val = do doraemon <- parseDoraemon settings val helper doraemon txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedDoraemonFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedDoraemonFields settings txts val = do doraemon <- parseDoraemon settings val helper doraemon txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -78,11 +79,3 @@ $(genParser "doraemon" "locations") $(genProvider "doraemon" "locations")--------
src/Faker/Provider/Dota.hs view
@@ -15,9 +15,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDota :: FromJSON a => FakerSettings -> Value -> Parser a parseDota settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" dota <- games .: "dota"@@ -25,19 +26,19 @@ parseDota settings val = fail $ "expected Object, but got " <> (show val) parseDotaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDotaField settings txt val = do dota <- parseDota settings val field <- dota .:? txt .!= mempty pure field parseDotaFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseDotaFields settings txts val = do dota <- parseDota settings val helper dota txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/DrWho.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDrWho :: FromJSON a => FakerSettings -> Value -> Parser a parseDrWho settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" drWho <- faker .: "dr_who" pure drWho parseDrWho settings val = fail $ "expected Object, but got " <> (show val) parseDrWhoField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDrWhoField settings txt val = do drWho <- parseDrWho settings val field <- drWho .:? txt .!= mempty
src/Faker/Provider/DragonBall.hs view
@@ -15,16 +15,17 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDragonBall :: FromJSON a => FakerSettings -> Value -> Parser a parseDragonBall settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" dragonBall <- faker .: "dragon_ball" pure dragonBall parseDragonBall settings val = fail $ "expected Object, but got " <> (show val) parseDragonBallField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDragonBallField settings txt val = do dragonBall <- parseDragonBall settings val field <- dragonBall .:? txt .!= mempty
src/Faker/Provider/DrivingLicense.hs view
@@ -15,28 +15,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDrivingLicense :: FromJSON a => FakerSettings -> Value -> Parser a parseDrivingLicense settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" drivingLicense <- faker .: "driving_licence" pure drivingLicense parseDrivingLicense settings val = fail $ "expected Object, but got " <> (show val) parseDrivingLicenseField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDrivingLicenseField settings txt val = do drivingLicense <- parseDrivingLicense settings val field <- drivingLicense .:? txt .!= mempty pure field parseDrivingLicenseFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseDrivingLicenseFields settings txts val = do drivingLicense <- parseDrivingLicense settings val helper drivingLicense txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedDrivingLicenseField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedDrivingLicenseField settings txt val = do@@ -60,14 +61,14 @@ parseUnresolvedDrivingLicenseFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedDrivingLicenseFields settings txts val = do drivingLicense <- parseDrivingLicense settings val helper drivingLicense txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -230,9 +231,9 @@ $(genParserUnresolveds "drivingLicense" ["usa","north_dakota"]) $(genProviderUnresolveds "drivingLicense" ["usa","north_dakota"]) -resolveDrivingLicenseText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveDrivingLicenseText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveDrivingLicenseText = genericResolver' resolveDrivingLicenseField -resolveDrivingLicenseField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveDrivingLicenseField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveDrivingLicenseField settings str = throwM $ InvalidField "drivingLicense" str
src/Faker/Provider/Drone.hs view
@@ -15,28 +15,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDrone :: FromJSON a => FakerSettings -> Value -> Parser a parseDrone settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" drone <- faker .: "drone" pure drone parseDrone settings val = fail $ "expected Object, but got " <> (show val) parseDroneField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDroneField settings txt val = do drone <- parseDrone settings val field <- drone .:? txt .!= mempty pure field parseDroneFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseDroneFields settings txts val = do drone <- parseDrone settings val helper drone txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedDroneField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedDroneField settings txt val = do@@ -60,14 +61,14 @@ parseUnresolvedDroneFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedDroneFields settings txts val = do drone <- parseDrone settings val helper drone txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -158,14 +159,8 @@ -resolveDroneText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveDroneText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveDroneText = genericResolver' resolveDroneField -resolveDroneField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveDroneField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveDroneField settings str = throwM $ InvalidField "drone" str------
src/Faker/Provider/DumbAndDumber.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDumbAndDumber :: FromJSON a => FakerSettings -> Value -> Parser a parseDumbAndDumber settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" dumbAndDumber <- faker .: "dumb_and_dumber" pure dumbAndDumber@@ -26,7 +27,7 @@ fail $ "expected Object, but got " <> (show val) parseDumbAndDumberField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDumbAndDumberField settings txt val = do dumbAndDumber <- parseDumbAndDumber settings val field <- dumbAndDumber .:? txt .!= mempty
src/Faker/Provider/Dune.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseDune :: FromJSON a => FakerSettings -> Value -> Parser a parseDune settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" dune <- faker .: "dune" pure dune parseDune settings val = fail $ "expected Object, but got " <> (show val) parseDuneField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseDuneField settings txt val = do dune <- parseDune settings val field <- dune .:? txt .!= mempty pure field parseDuneFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseDuneFields settings txts val = do dune <- parseDune settings val helper dune txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Educator.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseEducator :: FromJSON a => FakerSettings -> Value -> Parser a parseEducator settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" educator <- faker .: "educator" pure educator parseEducator settings val = fail $ "expected Object, but got " <> (show val) parseEducatorField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseEducatorField settings txt val = do educator <- parseEducator settings val field <- educator .:? txt .!= mempty pure field parseEducatorFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseEducatorFields settings txts val = do educator <- parseEducator settings val helper educator txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedEducatorField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedEducatorField settings txt val = do@@ -58,14 +59,14 @@ parseUnresolvedEducatorFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedEducatorFields settings txts val = do educator <- parseEducator settings val helper educator txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -137,11 +138,11 @@ $(genProviderUnresolveds "educator" ["tertiary", "degree", "course_number"]) resolveEducatorText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveEducatorText = genericResolver' resolveEducatorField resolveEducatorField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveEducatorField settings field@"course_number" = cachedRandomUnresolvedVec "educator"
src/Faker/Provider/ElderScrolls.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseElderScrolls :: FromJSON a => FakerSettings -> Value -> Parser a parseElderScrolls settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" elderScrolls <- games .: "elder_scrolls"@@ -27,19 +28,19 @@ fail $ "expected Object, but got " <> (show val) parseElderScrollsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseElderScrollsField settings txt val = do elderScrolls <- parseElderScrolls settings val field <- elderScrolls .:? txt .!= mempty pure field parseElderScrollsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseElderScrollsFields settings txts val = do elderScrolls <- parseElderScrolls settings val helper elderScrolls txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/ElectricalComponents.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseElectricalComponents :: FromJSON a => FakerSettings -> Value -> Parser a parseElectricalComponents settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" electricalComponents <- faker .: "electrical_components" pure electricalComponents@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseElectricalComponentsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseElectricalComponentsField settings txt val = do electricalComponents <- parseElectricalComponents settings val field <- electricalComponents .:? txt .!= mempty pure field parseElectricalComponentsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseElectricalComponentsFields settings txts val = do electricalComponents <- parseElectricalComponents settings val helper electricalComponents txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Esport.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseEsport :: FromJSON a => FakerSettings -> Value -> Parser a parseEsport settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" esport <- faker .: "esport" pure esport parseEsport settings val = fail $ "expected Object, but got " <> (show val) parseEsportField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseEsportField settings txt val = do esport <- parseEsport settings val field <- esport .:? txt .!= mempty pure field parseEsportFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseEsportFields settings txts val = do esport <- parseEsport settings val helper esport txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Fallout.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFallout :: FromJSON a => FakerSettings -> Value -> Parser a parseFallout settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" fallout <- games .: "fallout"@@ -26,19 +27,19 @@ parseFallout settings val = fail $ "expected Object, but got " <> (show val) parseFalloutField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFalloutField settings txt val = do fallout <- parseFallout settings val field <- fallout .:? txt .!= mempty pure field parseFalloutFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFalloutFields settings txts val = do fallout <- parseFallout settings val helper fallout txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/FamilyGuy.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFamilyGuy :: FromJSON a => FakerSettings -> Value -> Parser a parseFamilyGuy settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" familyGuy <- faker .: "family_guy" pure familyGuy parseFamilyGuy settings val = fail $ "expected Object, but got " <> (show val) parseFamilyGuyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFamilyGuyField settings txt val = do familyGuy <- parseFamilyGuy settings val field <- familyGuy .:? txt .!= mempty pure field parseFamilyGuyFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFamilyGuyFields settings txts val = do familyGuy <- parseFamilyGuy settings val helper familyGuy txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/File.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFile :: FromJSON a => FakerSettings -> Value -> Parser a parseFile settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" file <- faker .: "file" pure file parseFile settings val = fail $ "expected Object, but got " <> (show val) parseFileField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFileField settings txt val = do file <- parseFile settings val field <- file .:? txt .!= mempty pure field parseFileFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFileFields settings txts val = do file <- parseFile settings val helper file txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/FinalSpace.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFinalSpace :: FromJSON a => FakerSettings -> Value -> Parser a parseFinalSpace settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" finalSpace <- faker .: "final_space" pure finalSpace parseFinalSpace settings val = fail $ "expected Object, but got " <> (show val) parseFinalSpaceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFinalSpaceField settings txt val = do finalSpace <- parseFinalSpace settings val field <- finalSpace .:? txt .!= mempty pure field parseFinalSpaceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFinalSpaceFields settings txts val = do finalSpace <- parseFinalSpace settings val helper finalSpace txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedFinalSpaceFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedFinalSpaceFields settings txts val = do finalSpace <- parseFinalSpace settings val helper finalSpace txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -78,11 +79,3 @@ $(genParser "finalSpace" "quotes") $(genProvider "finalSpace" "quotes")--------
src/Faker/Provider/Finance.hs view
@@ -15,9 +15,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFinance :: FromJSON a => FakerSettings -> Value -> Parser a parseFinance settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" finance <- faker .: "finance" creditCard <- finance .: "credit_card"@@ -25,19 +26,19 @@ parseFinance settings val = fail $ "expected Object, but got " <> (show val) parseFinanceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFinanceField settings txt val = do finance <- parseFinance settings val field <- finance .:? txt .!= mempty pure field parseFinanceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFinanceFields settings txts val = do finance <- parseFinance settings val helper finance txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedFinanceField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedFinanceField settings txt val = do@@ -112,11 +113,11 @@ $(genProviders "finance" ["ticker", "nyse"]) resolveFinanceText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveFinanceText = genericResolver' resolveFinanceField resolveFinanceField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveFinanceField settings field@"visa" = cachedRandomUnresolvedVec "finance"
src/Faker/Provider/Food.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFood :: FromJSON a => FakerSettings -> Value -> Parser a parseFood settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" food <- faker .: "food" pure food parseFood settings val = fail $ "expected Object, but got " <> (show val) parseFoodField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFoodField settings txt val = do food <- parseFood settings val field <- food .:? txt .!= mempty pure field parseFoodFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFoodFields settings txts val = do food <- parseFood settings val helper food txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Football.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFootball :: FromJSON a => FakerSettings -> Value -> Parser a parseFootball settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" football <- faker .: "football" pure football parseFootball settings val = fail $ "expected Object, but got " <> (show val) parseFootballField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFootballField settings txt val = do football <- parseFootball settings val field <- football .:? txt .!= mempty pure field parseFootballFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFootballFields settings txts val = do football <- parseFootball settings val helper football txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/FreshPrinceOfBelAir.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFreshPrinceOfBelAir :: FromJSON a => FakerSettings -> Value -> Parser a parseFreshPrinceOfBelAir settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" freshPrinceOfBelAir <- faker .: "the_fresh_prince_of_bel_air" pure freshPrinceOfBelAir@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseFreshPrinceOfBelAirField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFreshPrinceOfBelAirField settings txt val = do freshPrinceOfBelAir <- parseFreshPrinceOfBelAir settings val field <- freshPrinceOfBelAir .:? txt .!= mempty pure field parseFreshPrinceOfBelAirFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFreshPrinceOfBelAirFields settings txts val = do freshPrinceOfBelAir <- parseFreshPrinceOfBelAir settings val helper freshPrinceOfBelAir txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Friends.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFriends :: FromJSON a => FakerSettings -> Value -> Parser a parseFriends settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" friends <- faker .: "friends" pure friends parseFriends settings val = fail $ "expected Object, but got " <> (show val) parseFriendsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFriendsField settings txt val = do friends <- parseFriends settings val field <- friends .:? txt .!= mempty pure field parseFriendsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFriendsFields settings txts val = do friends <- parseFriends settings val helper friends txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/FunnyName.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFunnyName :: FromJSON a => FakerSettings -> Value -> Parser a parseFunnyName settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" funnyName <- faker .: "funny_name" pure funnyName parseFunnyName settings val = fail $ "expected Object, but got " <> (show val) parseFunnyNameField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFunnyNameField settings txt val = do funnyName <- parseFunnyName settings val field <- funnyName .:? txt .!= mempty pure field parseFunnyNameFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFunnyNameFields settings txts val = do funnyName <- parseFunnyName settings val helper funnyName txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Futurama.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseFuturama :: FromJSON a => FakerSettings -> Value -> Parser a parseFuturama settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" futurama <- faker .: "futurama" pure futurama parseFuturama settings val = fail $ "expected Object, but got " <> (show val) parseFuturamaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseFuturamaField settings txt val = do futurama <- parseFuturama settings val field <- futurama .:? txt .!= mempty pure field parseFuturamaFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseFuturamaFields settings txts val = do futurama <- parseFuturama settings val helper futurama txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedFuturamaFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedFuturamaFields settings txts val = do futurama <- parseFuturama settings val helper futurama txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -86,14 +87,3 @@ $(genParser "futurama" "hermes_catchphrases") $(genProvider "futurama" "hermes_catchphrases")-----------
src/Faker/Provider/GameOfThrones.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseGameOfThrones :: FromJSON a => FakerSettings -> Value -> Parser a parseGameOfThrones settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" gameOfThrones <- faker .: "game_of_thrones" pure gameOfThrones@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseGameOfThronesField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseGameOfThronesField settings txt val = do gameOfThrones <- parseGameOfThrones settings val field <- gameOfThrones .:? txt .!= mempty pure field parseGameOfThronesFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseGameOfThronesFields settings txts val = do gameOfThrones <- parseGameOfThrones settings val helper gameOfThrones txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Gender.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseGender :: FromJSON a => FakerSettings -> Value -> Parser a parseGender settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" gender <- faker .: "gender" pure gender parseGender settings val = fail $ "expected Object, but got " <> (show val) parseGenderField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseGenderField settings txt val = do gender <- parseGender settings val field <- gender .:? txt .!= mempty pure field parseGenderFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseGenderFields settings txts val = do gender <- parseGender settings val helper gender txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -55,4 +56,3 @@ $(genParser "gender" "short_binary_types") $(genProvider "gender" "short_binary_types")-
src/Faker/Provider/Ghostbusters.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseGhostbusters :: FromJSON a => FakerSettings -> Value -> Parser a parseGhostbusters settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" ghostbusters <- faker .: "ghostbusters" pure ghostbusters@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseGhostbustersField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseGhostbustersField settings txt val = do ghostbusters <- parseGhostbusters settings val field <- ghostbusters .:? txt .!= mempty pure field parseGhostbustersFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseGhostbustersFields settings txts val = do ghostbusters <- parseGhostbusters settings val helper ghostbusters txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/GratefulDead.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseGratefulDead :: FromJSON a => FakerSettings -> Value -> Parser a parseGratefulDead settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" gratefulDead <- faker .: "grateful_dead" pure gratefulDead@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseGratefulDeadField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseGratefulDeadField settings txt val = do gratefulDead <- parseGratefulDead settings val field <- gratefulDead .:? txt .!= mempty pure field parseGratefulDeadFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseGratefulDeadFields settings txts val = do gratefulDead <- parseGratefulDead settings val helper gratefulDead txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/GreekPhilosophers.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseGreekPhilosophers :: FromJSON a => FakerSettings -> Value -> Parser a parseGreekPhilosophers settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" greekPhilosophers <- faker .: "greek_philosophers" pure greekPhilosophers@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseGreekPhilosophersField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseGreekPhilosophersField settings txt val = do greekPhilosophers <- parseGreekPhilosophers settings val field <- greekPhilosophers .:? txt .!= mempty pure field parseGreekPhilosophersFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseGreekPhilosophersFields settings txts val = do greekPhilosophers <- parseGreekPhilosophers settings val helper greekPhilosophers txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Hacker.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHacker :: FromJSON a => FakerSettings -> Value -> Parser a parseHacker settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" hacker <- faker .: "hacker" pure hacker parseHacker settings val = fail $ "expected Object, but got " <> (show val) parseHackerField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHackerField settings txt val = do hacker <- parseHacker settings val field <- hacker .:? txt .!= mempty pure field parseHackerFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHackerFields settings txts val = do hacker <- parseHacker settings val helper hacker txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/HalfLife.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHalfLife :: FromJSON a => FakerSettings -> Value -> Parser a parseHalfLife settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" halfLife <- games .: "half_life"@@ -26,19 +27,19 @@ parseHalfLife settings val = fail $ "expected Object, but got " <> (show val) parseHalfLifeField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHalfLifeField settings txt val = do halfLife <- parseHalfLife settings val field <- halfLife .:? txt .!= mempty pure field parseHalfLifeFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHalfLifeFields settings txts val = do halfLife <- parseHalfLife settings val helper halfLife txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/HarryPotter.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHarryPotter :: FromJSON a => FakerSettings -> Value -> Parser a parseHarryPotter settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" harryPotter <- faker .: "harry_potter" pure harryPotter parseHarryPotter settings val = fail $ "expected Object, but got " <> (show val) parseHarryPotterField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHarryPotterField settings txt val = do harryPotter <- parseHarryPotter settings val field <- harryPotter .:? txt .!= mempty pure field parseHarryPotterFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHarryPotterFields settings txts val = do harryPotter <- parseHarryPotter settings val helper harryPotter txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Heroes.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHeroes :: FromJSON a => FakerSettings -> Value -> Parser a parseHeroes settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" heroes <- faker .: "heroes" pure heroes parseHeroes settings val = fail $ "expected Object, but got " <> (show val) parseHeroesField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHeroesField settings txt val = do heroes <- parseHeroes settings val field <- heroes .:? txt .!= mempty pure field parseHeroesFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHeroesFields settings txts val = do heroes <- parseHeroes settings val helper heroes txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/HeroesOfTheStorm.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHeroesOfTheStorm :: FromJSON a => FakerSettings -> Value -> Parser a parseHeroesOfTheStorm settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" heroesOfTheStorm <- faker .: "heroes_of_the_storm" pure heroesOfTheStorm@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseHeroesOfTheStormField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHeroesOfTheStormField settings txt val = do heroesOfTheStorm <- parseHeroesOfTheStorm settings val field <- heroesOfTheStorm .:? txt .!= mempty pure field parseHeroesOfTheStormFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHeroesOfTheStormFields settings txts val = do heroesOfTheStorm <- parseHeroesOfTheStorm settings val helper heroesOfTheStorm txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/HeyArnold.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHeyArnold :: FromJSON a => FakerSettings -> Value -> Parser a parseHeyArnold settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" heyArnold <- faker .: "hey_arnold" pure heyArnold parseHeyArnold settings val = fail $ "expected Object, but got " <> (show val) parseHeyArnoldField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHeyArnoldField settings txt val = do heyArnold <- parseHeyArnold settings val field <- heyArnold .:? txt .!= mempty pure field parseHeyArnoldFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHeyArnoldFields settings txts val = do heyArnold <- parseHeyArnold settings val helper heyArnold txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Hipster.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHipster :: FromJSON a => FakerSettings -> Value -> Parser a parseHipster settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" hipster <- faker .: "hipster" pure hipster parseHipster settings val = fail $ "expected Object, but got " <> (show val) parseHipsterField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHipsterField settings txt val = do hipster <- parseHipster settings val field <- hipster .:? txt .!= mempty pure field parseHipsterFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHipsterFields settings txts val = do hipster <- parseHipster settings val helper hipster txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/HitchhikersGuideToTheGalaxy.hs view
@@ -16,10 +16,11 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHitchhikersGuideToTheGalaxy :: FromJSON a => FakerSettings -> Value -> Parser a parseHitchhikersGuideToTheGalaxy settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" hitchhikersGuideToTheGalaxy <- faker .: "hitchhikers_guide_to_the_galaxy" pure hitchhikersGuideToTheGalaxy@@ -27,19 +28,19 @@ fail $ "expected Object, but got " <> (show val) parseHitchhikersGuideToTheGalaxyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHitchhikersGuideToTheGalaxyField settings txt val = do hitchhikersGuideToTheGalaxy <- parseHitchhikersGuideToTheGalaxy settings val field <- hitchhikersGuideToTheGalaxy .:? txt .!= mempty pure field parseHitchhikersGuideToTheGalaxyFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHitchhikersGuideToTheGalaxyFields settings txts val = do hitchhikersGuideToTheGalaxy <- parseHitchhikersGuideToTheGalaxy settings val helper hitchhikersGuideToTheGalaxy txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Horse.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHorse :: FromJSON a => FakerSettings -> Value -> Parser a parseHorse settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" creature <- faker .: "creature" horse <- creature .: "horse"@@ -24,19 +25,19 @@ parseHorse settings val = fail $ "expected Object, but got " <> (show val) parseHorseField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHorseField settings txt val = do horse <- parseHorse settings val field <- horse .:? txt .!= mempty pure field parseHorseFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHorseFields settings txts val = do horse <- parseHorse settings val helper horse txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/House.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHouse :: FromJSON a => FakerSettings -> Value -> Parser a parseHouse settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" house <- faker .: "house" pure house parseHouse settings val = fail $ "expected Object, but got " <> (show val) parseHouseField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHouseField settings txt val = do house <- parseHouse settings val field <- house .:? txt .!= mempty pure field parseHouseFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHouseFields settings txts val = do house <- parseHouse settings val helper house txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/HowIMetYourMother.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHowIMetYourMother :: FromJSON a => FakerSettings -> Value -> Parser a parseHowIMetYourMother settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" howIMetYourMother <- faker .: "how_i_met_your_mother" pure howIMetYourMother@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseHowIMetYourMotherField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHowIMetYourMotherField settings txt val = do howIMetYourMother <- parseHowIMetYourMother settings val field <- howIMetYourMother .:? txt .!= mempty pure field parseHowIMetYourMotherFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHowIMetYourMotherFields settings txts val = do howIMetYourMother <- parseHowIMetYourMother settings val helper howIMetYourMother txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/HowToTrainYourDragon.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseHowToTrainYourDragon :: FromJSON a => FakerSettings -> Value -> Parser a parseHowToTrainYourDragon settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" howToTrainYourDragon <- faker .: "how_to_train_your_dragon" pure howToTrainYourDragon parseHowToTrainYourDragon settings val = fail $ "expected Object, but got " <> (show val) parseHowToTrainYourDragonField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseHowToTrainYourDragonField settings txt val = do howToTrainYourDragon <- parseHowToTrainYourDragon settings val field <- howToTrainYourDragon .:? txt .!= mempty pure field parseHowToTrainYourDragonFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseHowToTrainYourDragonFields settings txts val = do howToTrainYourDragon <- parseHowToTrainYourDragon settings val helper howToTrainYourDragon txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedHowToTrainYourDragonFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedHowToTrainYourDragonFields settings txts val = do howToTrainYourDragon <- parseHowToTrainYourDragon settings val helper howToTrainYourDragon txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -78,11 +79,3 @@ $(genParser "howToTrainYourDragon" "locations") $(genProvider "howToTrainYourDragon" "locations")--------
src/Faker/Provider/IndustrySegments.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseIndustrySegments :: FromJSON a => FakerSettings -> Value -> Parser a parseIndustrySegments settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" industrySegments <- faker .: "industry_segments" pure industrySegments@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseIndustrySegmentsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseIndustrySegmentsField settings txt val = do industrySegments <- parseIndustrySegments settings val field <- industrySegments .:? txt .!= mempty pure field parseIndustrySegmentsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseIndustrySegmentsFields settings txts val = do industrySegments <- parseIndustrySegments settings val helper industrySegments txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Internet.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseInternet :: FromJSON a => FakerSettings -> Value -> Parser a parseInternet settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" internet <- faker .: "internet" pure internet parseInternet settings val = fail $ "expected Object, but got " <> (show val) parseInternetField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseInternetField settings txt val = do internet <- parseInternet settings val field <- internet .:? txt .!= mempty pure field parseInternetFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseInternetFields settings txts val = do internet <- parseInternet settings val helper internet txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/JackHandey.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseJackHandey :: FromJSON a => FakerSettings -> Value -> Parser a parseJackHandey settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" jackHandey <- faker .: "quote" pure jackHandey parseJackHandey settings val = fail $ "expected Object, but got " <> (show val) parseJackHandeyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseJackHandeyField settings txt val = do jackHandey <- parseJackHandey settings val field <- jackHandey .:? txt .!= mempty pure field parseJackHandeyFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseJackHandeyFields settings txts val = do jackHandey <- parseJackHandey settings val helper jackHandey txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedJackHandeyFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedJackHandeyFields settings txts val = do jackHandey <- parseJackHandey settings val helper jackHandey txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -70,11 +71,3 @@ $(genParser "jackHandey" "jack_handey") $(genProvider "jackHandey" "jack_handey")--------
src/Faker/Provider/Job.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseJob :: FromJSON a => FakerSettings -> Value -> Parser a parseJob settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" job <- faker .: "job" pure job parseJob settings val = fail $ "expected Object, but got " <> (show val) parseJobField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseJobField settings txt val = do job <- parseJob settings val field <- job .:? txt .!= mempty pure field parseJobFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseJobFields settings txts val = do job <- parseJob settings val helper job txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedJobField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedJobField settings txt val = do@@ -90,10 +91,10 @@ $(genProviderUnresolved "job" "title") -resolveJobText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveJobText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveJobText = genericResolver' resolveJobField -resolveJobField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveJobField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveJobField settings field@"seniority" = cachedRandomVec "job" field jobSeniorityProvider settings resolveJobField settings field@"field" =
src/Faker/Provider/Kpop.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseKpop :: FromJSON a => FakerSettings -> Value -> Parser a parseKpop settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" kpop <- faker .: "kpop" pure kpop parseKpop settings val = fail $ "expected Object, but got " <> (show val) parseKpopField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseKpopField settings txt val = do kpop <- parseKpop settings val field <- kpop .:? txt .!= mempty pure field parseKpopFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseKpopFields settings txts val = do kpop <- parseKpop settings val helper kpop txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/LeagueOfLegends.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseLeagueOfLegends :: FromJSON a => FakerSettings -> Value -> Parser a parseLeagueOfLegends settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" leagueOfLegends <- games .: "league_of_legends"@@ -27,19 +28,19 @@ fail $ "expected Object, but got " <> (show val) parseLeagueOfLegendsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseLeagueOfLegendsField settings txt val = do leagueOfLegends <- parseLeagueOfLegends settings val field <- leagueOfLegends .:? txt .!= mempty pure field parseLeagueOfLegendsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseLeagueOfLegendsFields settings txts val = do leagueOfLegends <- parseLeagueOfLegends settings val helper leagueOfLegends txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Lebowski.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseLebowski :: FromJSON a => FakerSettings -> Value -> Parser a parseLebowski settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" lebowski <- faker .: "lebowski" pure lebowski parseLebowski settings val = fail $ "expected Object, but got " <> (show val) parseLebowskiField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseLebowskiField settings txt val = do lebowski <- parseLebowski settings val field <- lebowski .:? txt .!= mempty pure field parseLebowskiFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseLebowskiFields settings txts val = do lebowski <- parseLebowski settings val helper lebowski txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Lorem.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseLorem :: FromJSON a => FakerSettings -> Value -> Parser a parseLorem settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" lorem <- faker .: "lorem" pure lorem parseLorem settings val = fail $ "expected Object, but got " <> (show val) parseLoremField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseLoremField settings txt val = do lorem <- parseLorem settings val field <- lorem .:? txt .!= mempty pure field parseLoremFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseLoremFields settings txts val = do lorem <- parseLorem settings val helper lorem txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Lovecraft.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseLovecraft :: FromJSON a => FakerSettings -> Value -> Parser a parseLovecraft settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" lovecraft <- faker .: "lovecraft" pure lovecraft parseLovecraft settings val = fail $ "expected Object, but got " <> (show val) parseLovecraftField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseLovecraftField settings txt val = do lovecraft <- parseLovecraft settings val field <- lovecraft .:? txt .!= mempty pure field parseLovecraftFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseLovecraftFields settings txts val = do lovecraft <- parseLovecraft settings val helper lovecraft txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Markdown.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMarkdown :: FromJSON a => FakerSettings -> Value -> Parser a parseMarkdown settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" markdown <- faker .: "markdown" pure markdown parseMarkdown settings val = fail $ "expected Object, but got " <> (show val) parseMarkdownField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMarkdownField settings txt val = do markdown <- parseMarkdown settings val field <- markdown .:? txt .!= mempty pure field parseMarkdownFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMarkdownFields settings txts val = do markdown <- parseMarkdown settings val helper markdown txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Marketing.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMarketing :: FromJSON a => FakerSettings -> Value -> Parser a parseMarketing settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" marketing <- faker .: "marketing" pure marketing parseMarketing settings val = fail $ "expected Object, but got " <> (show val) parseMarketingField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMarketingField settings txt val = do marketing <- parseMarketing settings val field <- marketing .:? txt .!= mempty pure field parseMarketingFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMarketingFields settings txts val = do marketing <- parseMarketing settings val helper marketing txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Measurement.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMeasurement :: FromJSON a => FakerSettings -> Value -> Parser a parseMeasurement settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" measurement <- faker .: "measurement" pure measurement parseMeasurement settings val = fail $ "expected Object, but got " <> (show val) parseMeasurementField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMeasurementField settings txt val = do measurement <- parseMeasurement settings val field <- measurement .:? txt .!= mempty pure field parseMeasurementFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMeasurementFields settings txts val = do measurement <- parseMeasurement settings val helper measurement txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/MichaelScott.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMichaelScott :: FromJSON a => FakerSettings -> Value -> Parser a parseMichaelScott settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" michaelScott <- faker .: "michael_scott" pure michaelScott@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseMichaelScottField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMichaelScottField settings txt val = do michaelScott <- parseMichaelScott settings val field <- michaelScott .:? txt .!= mempty pure field parseMichaelScottFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMichaelScottFields settings txts val = do michaelScott <- parseMichaelScott settings val helper michaelScott txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Military.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMilitary :: FromJSON a => FakerSettings -> Value -> Parser a parseMilitary settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" military <- faker .: "military" pure military parseMilitary settings val = fail $ "expected Object, but got " <> (show val) parseMilitaryField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMilitaryField settings txt val = do military <- parseMilitary settings val field <- military .:? txt .!= mempty pure field parseMilitaryFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMilitaryFields settings txts val = do military <- parseMilitary settings val helper military txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Minecraft.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMinecraft :: FromJSON a => FakerSettings -> Value -> Parser a parseMinecraft settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" minecraft <- games .: "minecraft"@@ -24,19 +25,19 @@ parseMinecraft settings val = fail $ "expected Object, but got " <> (show val) parseMinecraftField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMinecraftField settings txt val = do minecraft <- parseMinecraft settings val field <- minecraft .:? txt .!= mempty pure field parseMinecraftFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMinecraftFields settings txts val = do minecraft <- parseMinecraft settings val helper minecraft txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -49,14 +50,14 @@ parseUnresolvedMinecraftFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedMinecraftFields settings txts val = do minecraft <- parseMinecraft settings val helper minecraft txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v
src/Faker/Provider/Mountain.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMountain :: FromJSON a => FakerSettings -> Value -> Parser a parseMountain settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" mountain <- faker .: "mountain" pure mountain parseMountain settings val = fail $ "expected Object, but got " <> (show val) parseMountainField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMountainField settings txt val = do mountain <- parseMountain settings val field <- mountain .:? txt .!= mempty pure field parseMountainFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMountainFields settings txts val = do mountain <- parseMountain settings val helper mountain txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedMountainFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedMountainFields settings txts val = do mountain <- parseMountain settings val helper mountain txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -74,11 +75,3 @@ $(genParser "mountain" "range") $(genProvider "mountain" "range")--------
src/Faker/Provider/Movie.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMovie :: FromJSON a => FakerSettings -> Value -> Parser a parseMovie settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" movie <- faker .: "movie" pure movie parseMovie settings val = fail $ "expected Object, but got " <> (show val) parseMovieField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMovieField settings txt val = do movie <- parseMovie settings val field <- movie .:? txt .!= mempty pure field parseMovieFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMovieFields settings txts val = do movie <- parseMovie settings val helper movie txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Music.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMusic :: FromJSON a => FakerSettings -> Value -> Parser a parseMusic settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" music <- faker .: "music" pure music parseMusic settings val = fail $ "expected Object, but got " <> (show val) parseMusicField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMusicField settings txt val = do music <- parseMusic settings val field <- music .:? txt .!= mempty pure field parseMusicFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMusicFields settings txts val = do music <- parseMusic settings val helper music txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedMusicFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedMusicFields settings txts val = do music <- parseMusic settings val helper music txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -101,5 +102,3 @@ $(genParsers "music" ["hiphop","artist"]) $(genProviders "music" ["hiphop","artist"])--
src/Faker/Provider/Myst.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseMyst :: FromJSON a => FakerSettings -> Value -> Parser a parseMyst settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" myst <- games .: "myst"@@ -26,19 +27,19 @@ parseMyst settings val = fail $ "expected Object, but got " <> (show val) parseMystField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseMystField settings txt val = do myst <- parseMyst settings val field <- myst .:? txt .!= mempty pure field parseMystFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseMystFields settings txts val = do myst <- parseMyst settings val helper myst txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Name.hs view
@@ -15,28 +15,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseName :: FromJSON a => FakerSettings -> Value -> Parser a parseName settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" name <- faker .: "name" pure name parseName settings val = fail $ "expected Object, but got " <> (show val) parseNameField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseNameField settings txt val = do name <- parseName settings val field <- name .:? txt .!= mempty pure field parseNameFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseNameFields settings txts val = do name <- parseName settings val helper name txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -46,7 +47,7 @@ parseUnresolvedNameField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedNameField settings txt val = do@@ -96,10 +97,10 @@ $(genProvider "name" "surname") -resolveNameText :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveNameText :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveNameText = genericResolver' resolveNameField -resolveNameField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveNameField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveNameField settings field@"female_first_name" = cachedRandomVec "name" field nameFemaleFirstNameProvider settings resolveNameField settings field@"male_first_name" =
src/Faker/Provider/Naruto.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseNaruto :: FromJSON a => FakerSettings -> Value -> Parser a parseNaruto settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" naruto <- faker .: "naruto" pure naruto parseNaruto settings val = fail $ "expected Object, but got " <> (show val) parseNarutoField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseNarutoField settings txt val = do naruto <- parseNaruto settings val field <- naruto .:? txt .!= mempty pure field parseNarutoFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseNarutoFields settings txts val = do naruto <- parseNaruto settings val helper naruto txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedNarutoFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedNarutoFields settings txts val = do naruto <- parseNaruto settings val helper naruto txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -82,11 +83,3 @@ $(genParser "naruto" "demons") $(genProvider "naruto" "demons")--------
src/Faker/Provider/Nation.hs view
@@ -17,28 +17,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseNation :: FromJSON a => FakerSettings -> Value -> Parser a parseNation settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" nation <- faker .: "nation" pure nation parseNation settings val = fail $ "expected Object, but got " <> (show val) parseNationField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseNationField settings txt val = do nation <- parseNation settings val field <- nation .:? txt .!= mempty pure field parseNationFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseNationFields settings txts val = do nation <- parseNation settings val helper nation txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/NatoPhoneticAlphabet.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseNatoPhoneticAlphabet :: FromJSON a => FakerSettings -> Value -> Parser a parseNatoPhoneticAlphabet settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" natoPhoneticAlphabet <- faker .: "nato_phonetic_alphabet" pure natoPhoneticAlphabet@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseNatoPhoneticAlphabetField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseNatoPhoneticAlphabetField settings txt val = do natoPhoneticAlphabet <- parseNatoPhoneticAlphabet settings val field <- natoPhoneticAlphabet .:? txt .!= mempty pure field parseNatoPhoneticAlphabetFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseNatoPhoneticAlphabetFields settings txts val = do natoPhoneticAlphabet <- parseNatoPhoneticAlphabet settings val helper natoPhoneticAlphabet txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/NewGirl.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseNewGirl :: FromJSON a => FakerSettings -> Value -> Parser a parseNewGirl settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" newGirl <- faker .: "new_girl" pure newGirl parseNewGirl settings val = fail $ "expected Object, but got " <> (show val) parseNewGirlField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseNewGirlField settings txt val = do newGirl <- parseNewGirl settings val field <- newGirl .:? txt .!= mempty pure field parseNewGirlFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseNewGirlFields settings txts val = do newGirl <- parseNewGirl settings val helper newGirl txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/OnePiece.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseOnePiece :: FromJSON a => FakerSettings -> Value -> Parser a parseOnePiece settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" onePiece <- faker .: "one_piece" pure onePiece parseOnePiece settings val = fail $ "expected Object, but got " <> (show val) parseOnePieceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseOnePieceField settings txt val = do onePiece <- parseOnePiece settings val field <- onePiece .:? txt .!= mempty pure field parseOnePieceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseOnePieceFields settings txts val = do onePiece <- parseOnePiece settings val helper onePiece txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Opera.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseOpera :: FromJSON a => FakerSettings -> Value -> Parser a parseOpera settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" opera <- faker .: "opera" pure opera parseOpera settings val = fail $ "expected Object, but got " <> (show val) parseOperaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseOperaField settings txt val = do opera <- parseOpera settings val field <- opera .:? txt .!= mempty pure field parseOperaFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseOperaFields settings txts val = do opera <- parseOpera settings val helper opera txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Overwatch.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseOverwatch :: FromJSON a => FakerSettings -> Value -> Parser a parseOverwatch settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" overwatch <- games .: "overwatch"@@ -26,19 +27,19 @@ parseOverwatch settings val = fail $ "expected Object, but got " <> (show val) parseOverwatchField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseOverwatchField settings txt val = do overwatch <- parseOverwatch settings val field <- overwatch .:? txt .!= mempty pure field parseOverwatchFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseOverwatchFields settings txts val = do overwatch <- parseOverwatch settings val helper overwatch txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/ParksAndRec.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseParksAndRec :: FromJSON a => FakerSettings -> Value -> Parser a parseParksAndRec settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" parksAndRec <- faker .: "parks_and_rec" pure parksAndRec parseParksAndRec settings val = fail $ "expected Object, but got " <> (show val) parseParksAndRecField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseParksAndRecField settings txt val = do parksAndRec <- parseParksAndRec settings val field <- parksAndRec .:? txt .!= mempty pure field parseParksAndRecFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseParksAndRecFields settings txts val = do parksAndRec <- parseParksAndRec settings val helper parksAndRec txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/PearlJam.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parsePearlJam :: FromJSON a => FakerSettings -> Value -> Parser a parsePearlJam settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" pearlJam <- faker .: "pearl_jam" pure pearlJam parsePearlJam settings val = fail $ "expected Object, but got " <> (show val) parsePearlJamField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parsePearlJamField settings txt val = do pearlJam <- parsePearlJam settings val field <- pearlJam .:? txt .!= mempty pure field parsePearlJamFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parsePearlJamFields settings txts val = do pearlJam <- parsePearlJam settings val helper pearlJam txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Phish.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parsePhish :: FromJSON a => FakerSettings -> Value -> Parser a parsePhish settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" phish <- faker .: "phish" pure phish parsePhish settings val = fail $ "expected Object, but got " <> (show val) parsePhishField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parsePhishField settings txt val = do phish <- parsePhish settings val field <- phish .:? txt .!= mempty pure field parsePhishFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parsePhishFields settings txts val = do phish <- parsePhish settings val helper phish txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/PhoneNumber.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parsePhoneNumber :: FromJSON a => FakerSettings -> Value -> Parser a parsePhoneNumber settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" phoneNumber <- faker .: "phone_number" pure phoneNumber parsePhoneNumber settings val = fail $ "expected Object, but got " <> (show val) parsePhoneNumberField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parsePhoneNumberField settings txt val = do phoneNumber <- parsePhoneNumber settings val field <- phoneNumber .:? txt .!= mempty pure field parsePhoneNumberFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parsePhoneNumberFields settings txts val = do phoneNumber <- parsePhoneNumber settings val helper phoneNumber txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -46,14 +47,14 @@ parseCellPhone :: FromJSON a => FakerSettings -> Value -> Parser a parseCellPhone settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" phoneNumber <- faker .: "cell_phone" pure phoneNumber parseCellPhone settings val = fail $ "expected Object, but got " <> (show val) parseCellPhoneField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseCellPhoneField settings txt val = do phoneNumber <- parsePhoneNumber settings val field <- phoneNumber .:? txt .!= mempty@@ -62,7 +63,7 @@ parseUnresolvedCellPhoneField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedCellPhoneField settings txt val = do@@ -73,7 +74,7 @@ parseUnresolvedPhoneNumberField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedPhoneNumberField settings txt val = do@@ -97,7 +98,7 @@ -- $(genProvider "cellPhone" "formats") parseCountryCode :: FromJSON a => FakerSettings -> Value -> Parser a parseCountryCode settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" countryCode <- faker .: "country_code" pure countryCode@@ -108,11 +109,11 @@ countryCodeProvider settings = fetchData settings PhoneNumber parseCountryCode resolvePhoneNumberText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolvePhoneNumberText = genericResolver' resolvePhoneNumberField resolvePhoneNumberField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolvePhoneNumberField settings field@"PhoneNumber.area_code" = let parser :: (FromJSON a, Monoid a) => FakerSettings -> Value -> Parser a
src/Faker/Provider/Pokemon.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parsePokemon :: FromJSON a => FakerSettings -> Value -> Parser a parsePokemon settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" pokemon <- games .: "pokemon"@@ -26,19 +27,19 @@ parsePokemon settings val = fail $ "expected Object, but got " <> (show val) parsePokemonField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parsePokemonField settings txt val = do pokemon <- parsePokemon settings val field <- pokemon .:? txt .!= mempty pure field parsePokemonFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parsePokemonFields settings txts val = do pokemon <- parsePokemon settings val helper pokemon txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Prince.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parsePrince :: FromJSON a => FakerSettings -> Value -> Parser a parsePrince settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" prince <- faker .: "prince" pure prince parsePrince settings val = fail $ "expected Object, but got " <> (show val) parsePrinceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parsePrinceField settings txt val = do prince <- parsePrince settings val field <- prince .:? txt .!= mempty pure field parsePrinceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parsePrinceFields settings txts val = do prince <- parsePrince settings val helper prince txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedPrinceFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedPrinceFields settings txts val = do prince <- parsePrince settings val helper prince txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -86,14 +87,3 @@ $(genParser "prince" "band") $(genProvider "prince" "band")-----------
src/Faker/Provider/PrincessBride.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parsePrincessBride :: FromJSON a => FakerSettings -> Value -> Parser a parsePrincessBride settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" princessBride <- faker .: "princess_bride" pure princessBride@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parsePrincessBrideField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parsePrincessBrideField settings txt val = do princessBride <- parsePrincessBride settings val field <- princessBride .:? txt .!= mempty pure field parsePrincessBrideFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parsePrincessBrideFields settings txts val = do princessBride <- parsePrincessBride settings val helper princessBride txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/ProgrammingLanguage.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseProgrammingLauguage :: FromJSON a => FakerSettings -> Value -> Parser a parseProgrammingLauguage settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" programmingLauguage <- faker .: "programming_language" pure programmingLauguage@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseProgrammingLauguageField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseProgrammingLauguageField settings txt val = do programmingLauguage <- parseProgrammingLauguage settings val field <- programmingLauguage .:? txt .!= mempty pure field parseProgrammingLauguageFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseProgrammingLauguageFields settings txts val = do programmingLauguage <- parseProgrammingLauguage settings val helper programmingLauguage txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Quote.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseQuote :: FromJSON a => FakerSettings -> Value -> Parser a parseQuote settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" quote <- faker .: "quote" pure quote parseQuote settings val = fail $ "expected Object, but got " <> (show val) parseQuoteField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseQuoteField settings txt val = do quote <- parseQuote settings val field <- quote .:? txt .!= mempty pure field parseQuoteFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseQuoteFields settings txts val = do quote <- parseQuote settings val helper quote txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Rajnikanth.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseRajnikanth :: FromJSON a => FakerSettings -> Value -> Parser a parseRajnikanth settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" rajnikanth <- faker .: "rajnikanth" pure rajnikanth parseRajnikanth settings val = fail $ "expected Object, but got " <> (show val) parseRajnikanthField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRajnikanthField settings txt val = do rajnikanth <- parseRajnikanth settings val field <- rajnikanth .:? txt .!= mempty pure field parseRajnikanthFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRajnikanthFields settings txts val = do rajnikanth <- parseRajnikanth settings val helper rajnikanth txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Relationship.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseRelationship :: FromJSON a => FakerSettings -> Value -> Parser a parseRelationship settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" relationship <- faker .: "relationship" pure relationship@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseRelationshipField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRelationshipField settings txt val = do relationship <- parseRelationship settings val field <- relationship .:? txt .!= mempty pure field parseRelationshipFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRelationshipFields settings txts val = do relationship <- parseRelationship settings val helper relationship txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Restaurant.hs view
@@ -17,28 +17,29 @@ import Faker.Provider.Name (resolveNameField) import Language.Haskell.TH + parseRestaurant :: FromJSON a => FakerSettings -> Value -> Parser a parseRestaurant settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" restaurant <- faker .: "restaurant" pure restaurant parseRestaurant settings val = fail $ "expected Object, but got " <> (show val) parseRestaurantField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRestaurantField settings txt val = do restaurant <- parseRestaurant settings val field <- restaurant .:? txt .!= mempty pure field parseRestaurantFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRestaurantFields settings txts val = do restaurant <- parseRestaurant settings val helper restaurant txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,7 +49,7 @@ parseUnresolvedRestaurantField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedRestaurantField settings txt val = do@@ -81,11 +82,11 @@ $(genProviderUnresolved "restaurant" "name") resolveRestaurantText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveRestaurantText = genericResolver' resolveRestaurantField resolveRestaurantField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveRestaurantField settings field@"name_prefix" = cachedRandomUnresolvedVec "restaurant"
src/Faker/Provider/RickAndMorty.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseRickAndMorty :: FromJSON a => FakerSettings -> Value -> Parser a parseRickAndMorty settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" rickAndMorty <- faker .: "rick_and_morty" pure rickAndMorty@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseRickAndMortyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRickAndMortyField settings txt val = do rickAndMorty <- parseRickAndMorty settings val field <- rickAndMorty .:? txt .!= mempty pure field parseRickAndMortyFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRickAndMortyFields settings txts val = do rickAndMorty <- parseRickAndMorty settings val helper rickAndMorty txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/RockBand.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseRockBand :: FromJSON a => FakerSettings -> Value -> Parser a parseRockBand settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" rockBand <- faker .: "rock_band" pure rockBand parseRockBand settings val = fail $ "expected Object, but got " <> (show val) parseRockBandField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRockBandField settings txt val = do rockBand <- parseRockBand settings val field <- rockBand .:? txt .!= mempty pure field parseRockBandFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRockBandFields settings txts val = do rockBand <- parseRockBand settings val helper rockBand txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Room.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseRoom :: FromJSON a => FakerSettings -> Value -> Parser a parseRoom settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" room <- faker .: "room" pure room parseRoom settings val = fail $ "expected Object, but got " <> (show val) parseRoomField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRoomField settings txt val = do room <- parseRoom settings val field <- room .:? txt .!= mempty pure field parseRoomFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRoomFields settings txts val = do room <- parseRoom settings val helper room txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedRoomFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedRoomFields settings txts val = do room <- parseRoom settings val helper room txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -82,11 +83,3 @@ $(genParser "room" "quotes") $(genProvider "room" "quotes")--------
src/Faker/Provider/Rupaul.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseRupaul :: FromJSON a => FakerSettings -> Value -> Parser a parseRupaul settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" rupaul <- faker .: "rupaul" pure rupaul parseRupaul settings val = fail $ "expected Object, but got " <> (show val) parseRupaulField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRupaulField settings txt val = do rupaul <- parseRupaul settings val field <- rupaul .:? txt .!= mempty pure field parseRupaulFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRupaulFields settings txts val = do rupaul <- parseRupaul settings val helper rupaul txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Rush.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseRush :: FromJSON a => FakerSettings -> Value -> Parser a parseRush settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" rush <- faker .: "rush" pure rush parseRush settings val = fail $ "expected Object, but got " <> (show val) parseRushField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseRushField settings txt val = do rush <- parseRush settings val field <- rush .:? txt .!= mempty pure field parseRushFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseRushFields settings txts val = do rush <- parseRush settings val helper rush txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedRushFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedRushFields settings txts val = do rush <- parseRush settings val helper rush txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -76,14 +77,3 @@ $(genParser "rush" "albums") $(genProvider "rush" "albums")-----------
src/Faker/Provider/Science.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseScience :: FromJSON a => FakerSettings -> Value -> Parser a parseScience settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" science <- faker .: "science" pure science parseScience settings val = fail $ "expected Object, but got " <> (show val) parseScienceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseScienceField settings txt val = do science <- parseScience settings val field <- science .:? txt .!= mempty pure field parseScienceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseScienceFields settings txts val = do science <- parseScience settings val helper science txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Seinfeld.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSeinfeld :: FromJSON a => FakerSettings -> Value -> Parser a parseSeinfeld settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" seinfeld <- faker .: "seinfeld" pure seinfeld parseSeinfeld settings val = fail $ "expected Object, but got " <> (show val) parseSeinfeldField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSeinfeldField settings txt val = do seinfeld <- parseSeinfeld settings val field <- seinfeld .:? txt .!= mempty pure field parseSeinfeldFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSeinfeldFields settings txts val = do seinfeld <- parseSeinfeld settings val helper seinfeld txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Shakespeare.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseShakespeare :: FromJSON a => FakerSettings -> Value -> Parser a parseShakespeare settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" shakespeare <- faker .: "shakespeare" pure shakespeare parseShakespeare settings val = fail $ "expected Object, but got " <> (show val) parseShakespeareField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseShakespeareField settings txt val = do shakespeare <- parseShakespeare settings val field <- shakespeare .:? txt .!= mempty pure field parseShakespeareFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseShakespeareFields settings txts val = do shakespeare <- parseShakespeare settings val helper shakespeare txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Show.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseShow :: FromJSON a => FakerSettings -> Value -> Parser a parseShow settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" show <- faker .: "show" pure show parseShow settings val = fail $ "expected Object, but got " <> (show val) parseShowField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseShowField settings txt val = do show <- parseShow settings val field <- show .:? txt .!= mempty pure field parseShowFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseShowFields settings txts val = do show <- parseShow settings val helper show txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/SiliconValley.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSiliconValley :: FromJSON a => FakerSettings -> Value -> Parser a parseSiliconValley settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" siliconValley <- faker .: "silicon_valley" pure siliconValley@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseSiliconValleyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSiliconValleyField settings txt val = do siliconValley <- parseSiliconValley settings val field <- siliconValley .:? txt .!= mempty pure field parseSiliconValleyFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSiliconValleyFields settings txts val = do siliconValley <- parseSiliconValley settings val helper siliconValley txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Simpsons.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSimpsons :: FromJSON a => FakerSettings -> Value -> Parser a parseSimpsons settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" simpsons <- faker .: "simpsons" pure simpsons parseSimpsons settings val = fail $ "expected Object, but got " <> (show val) parseSimpsonsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSimpsonsField settings txt val = do simpsons <- parseSimpsons settings val field <- simpsons .:? txt .!= mempty pure field parseSimpsonsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSimpsonsFields settings txts val = do simpsons <- parseSimpsons settings val helper simpsons txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/SlackEmoji.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSlackEmoji :: FromJSON a => FakerSettings -> Value -> Parser a parseSlackEmoji settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" slackEmoji <- faker .: "slack_emoji" pure slackEmoji parseSlackEmoji settings val = fail $ "expected Object, but got " <> (show val) parseSlackEmojiField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSlackEmojiField settings txt val = do slackEmoji <- parseSlackEmoji settings val field <- slackEmoji .:? txt .!= mempty pure field parseSlackEmojiFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSlackEmojiFields settings txts val = do slackEmoji <- parseSlackEmoji settings val helper slackEmoji txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedSlackEmojiField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedSlackEmojiField settings txt val = do@@ -92,11 +93,11 @@ $(genProviderUnresolved "slackEmoji" "emoji") resolveSlackEmojiText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveSlackEmojiText = genericResolver' resolveSlackEmojiField resolveSlackEmojiField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveSlackEmojiField settings field@"people" = cachedRandomVec "slackEmoji" field slackEmojiPeopleProvider settings resolveSlackEmojiField settings field@"nature" =
src/Faker/Provider/SonicTheHedgehog.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSonicTheHedgehog :: FromJSON a => FakerSettings -> Value -> Parser a parseSonicTheHedgehog settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" sonicTheHedgehog <- games .: "sonic_the_hedgehog"@@ -27,19 +28,19 @@ fail $ "expected Object, but got " <> (show val) parseSonicTheHedgehogField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSonicTheHedgehogField settings txt val = do sonicTheHedgehog <- parseSonicTheHedgehog settings val field <- sonicTheHedgehog .:? txt .!= mempty pure field parseSonicTheHedgehogFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSonicTheHedgehogFields settings txts val = do sonicTheHedgehog <- parseSonicTheHedgehog settings val helper sonicTheHedgehog txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Source.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSource :: FromJSON a => FakerSettings -> Value -> Parser a parseSource settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" source <- faker .: "source" pure source parseSource settings val = fail $ "expected Object, but got " <> (show val) parseSourceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSourceField settings txt val = do source <- parseSource settings val field <- source .:? txt .!= mempty pure field parseSourceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSourceFields settings txts val = do source <- parseSource settings val helper source txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/SouthPark.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSouthPark :: FromJSON a => FakerSettings -> Value -> Parser a parseSouthPark settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" southPark <- faker .: "south_park" pure southPark parseSouthPark settings val = fail $ "expected Object, but got " <> (show val) parseSouthParkField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSouthParkField settings txt val = do southPark <- parseSouthPark settings val field <- southPark .:? txt .!= mempty pure field parseSouthParkFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSouthParkFields settings txts val = do southPark <- parseSouthPark settings val helper southPark txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Space.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSpace :: FromJSON a => FakerSettings -> Value -> Parser a parseSpace settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" space <- faker .: "space" pure space parseSpace settings val = fail $ "expected Object, but got " <> (show val) parseSpaceField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSpaceField settings txt val = do space <- parseSpace settings val field <- space .:? txt .!= mempty pure field parseSpaceFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSpaceFields settings txts val = do space <- parseSpace settings val helper space txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/StarTrek.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseStarTrek :: FromJSON a => FakerSettings -> Value -> Parser a parseStarTrek settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" starTrek <- faker .: "star_trek" pure starTrek parseStarTrek settings val = fail $ "expected Object, but got " <> (show val) parseStarTrekField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseStarTrekField settings txt val = do starTrek <- parseStarTrek settings val field <- starTrek .:? txt .!= mempty pure field parseStarTrekFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseStarTrekFields settings txts val = do starTrek <- parseStarTrek settings val helper starTrek txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/StarWars.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseStarWars :: FromJSON a => FakerSettings -> Value -> Parser a parseStarWars settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" starWars <- faker .: "star_wars" pure starWars parseStarWars settings val = fail $ "expected Object, but got " <> (show val) parseStarWarsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseStarWarsField settings txt val = do starWars <- parseStarWars settings val field <- starWars .:? txt .!= mempty pure field parseStarWarsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseStarWarsFields settings txts val = do starWars <- parseStarWars settings val helper starWars txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedStarWarsField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedStarWarsField settings txt val = do@@ -92,11 +93,11 @@ $(genProviderUnresolved "starWars" "call_sign") resolveStarWarsText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveStarWarsText = genericResolver' resolveStarWarsField resolveStarWarsField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveStarWarsField settings field@"call_number" = cachedRandomUnresolvedVec "starWars"
src/Faker/Provider/Stargate.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseStargate :: FromJSON a => FakerSettings -> Value -> Parser a parseStargate settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" stargate <- faker .: "stargate" pure stargate parseStargate settings val = fail $ "expected Object, but got " <> (show val) parseStargateField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseStargateField settings txt val = do stargate <- parseStargate settings val field <- stargate .:? txt .!= mempty pure field parseStargateFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseStargateFields settings txts val = do stargate <- parseStargate settings val helper stargate txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/StrangerThings.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseStrangerThings :: FromJSON a => FakerSettings -> Value -> Parser a parseStrangerThings settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" strangerThings <- faker .: "stranger_things" pure strangerThings@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseStrangerThingsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseStrangerThingsField settings txt val = do strangerThings <- parseStrangerThings settings val field <- strangerThings .:? txt .!= mempty pure field parseStrangerThingsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseStrangerThingsFields settings txts val = do strangerThings <- parseStrangerThings settings val helper strangerThings txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/StreetFighter.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseStreetFighter :: FromJSON a => FakerSettings -> Value -> Parser a parseStreetFighter settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" streetFighter <- games .: "street_fighter"@@ -24,19 +25,19 @@ parseStreetFighter settings val = fail $ "expected Object, but got " <> (show val) parseStreetFighterField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseStreetFighterField settings txt val = do streetFighter <- parseStreetFighter settings val field <- streetFighter .:? txt .!= mempty pure field parseStreetFighterFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseStreetFighterFields settings txts val = do streetFighter <- parseStreetFighter settings val helper streetFighter txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -49,14 +50,14 @@ parseUnresolvedStreetFighterFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedStreetFighterFields settings txts val = do streetFighter <- parseStreetFighter settings val helper streetFighter txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -87,14 +88,3 @@ $(genParser "streetFighter" "moves") $(genProvider "streetFighter" "moves")-----------
src/Faker/Provider/StudioGhibli.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseStudioGhibli :: FromJSON a => FakerSettings -> Value -> Parser a parseStudioGhibli settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" studioGhibli <- faker .: "studio_ghibli" pure studioGhibli parseStudioGhibli settings val = fail $ "expected Object, but got " <> (show val) parseStudioGhibliField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseStudioGhibliField settings txt val = do studioGhibli <- parseStudioGhibli settings val field <- studioGhibli .:? txt .!= mempty pure field parseStudioGhibliFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseStudioGhibliFields settings txts val = do studioGhibli <- parseStudioGhibli settings val helper studioGhibli txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedStudioGhibliFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedStudioGhibliFields settings txts val = do studioGhibli <- parseStudioGhibli settings val helper studioGhibli txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -81,14 +82,3 @@ $(genParser "studioGhibli" "movies") $(genProvider "studioGhibli" "movies")-----------
src/Faker/Provider/Subscription.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSubscription :: FromJSON a => FakerSettings -> Value -> Parser a parseSubscription settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" subscription <- faker .: "subscription" pure subscription@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseSubscriptionField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSubscriptionField settings txt val = do subscription <- parseSubscription settings val field <- subscription .:? txt .!= mempty pure field parseSubscriptionFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSubscriptionFields settings txts val = do subscription <- parseSubscription settings val helper subscription txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Suits.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSuits :: FromJSON a => FakerSettings -> Value -> Parser a parseSuits settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" suits <- faker .: "suits" pure suits parseSuits settings val = fail $ "expected Object, but got " <> (show val) parseSuitsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSuitsField settings txt val = do suits <- parseSuits settings val field <- suits .:? txt .!= mempty pure field parseSuitsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSuitsFields settings txts val = do suits <- parseSuits settings val helper suits txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -53,14 +54,3 @@ $(genParser "suits" "quotes") $(genProvider "suits" "quotes")-----------
src/Faker/Provider/SuperMario.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSuperMario :: FromJSON a => FakerSettings -> Value -> Parser a parseSuperMario settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" superMario <- games .: "super_mario"@@ -24,19 +25,19 @@ parseSuperMario settings val = fail $ "expected Object, but got " <> (show val) parseSuperMarioField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSuperMarioField settings txt val = do superMario <- parseSuperMario settings val field <- superMario .:? txt .!= mempty pure field parseSuperMarioFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSuperMarioFields settings txts val = do superMario <- parseSuperMario settings val helper superMario txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -49,14 +50,14 @@ parseUnresolvedSuperMarioFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedSuperMarioFields settings txts val = do superMario <- parseSuperMario settings val helper superMario txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v
src/Faker/Provider/SuperSmashBros.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSuperSmashBros :: FromJSON a => FakerSettings -> Value -> Parser a parseSuperSmashBros settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" superSmashBros <- games .: "super_smash_bros"@@ -27,19 +28,19 @@ fail $ "expected Object, but got " <> (show val) parseSuperSmashBrosField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSuperSmashBrosField settings txt val = do superSmashBros <- parseSuperSmashBros settings val field <- superSmashBros .:? txt .!= mempty pure field parseSuperSmashBrosFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSuperSmashBrosFields settings txts val = do superSmashBros <- parseSuperSmashBros settings val helper superSmashBros txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Superhero.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSuperhero :: FromJSON a => FakerSettings -> Value -> Parser a parseSuperhero settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" superhero <- faker .: "superhero" pure superhero parseSuperhero settings val = fail $ "expected Object, but got " <> (show val) parseSuperheroField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSuperheroField settings txt val = do superhero <- parseSuperhero settings val field <- superhero .:? txt .!= mempty pure field parseSuperheroFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSuperheroFields settings txts val = do superhero <- parseSuperhero settings val helper superhero txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedSuperheroField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedSuperheroField settings txt val = do@@ -76,11 +77,11 @@ $(genProviderUnresolved "superhero" "name") resolveSuperheroText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveSuperheroText settings txt = genericResolver settings txt resolveSuperheroField resolveSuperheroField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveSuperheroField settings field@"Superhero.prefix" = cachedRandomVec "superhero" field superheroPrefixProvider settings resolveSuperheroField settings field@"Superhero.suffix" =
src/Faker/Provider/SwordArtOnline.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseSwordArtOnline :: FromJSON a => FakerSettings -> Value -> Parser a parseSwordArtOnline settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" swordArtOnline <- faker .: "sword_art_online" pure swordArtOnline@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseSwordArtOnlineField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseSwordArtOnlineField settings txt val = do swordArtOnline <- parseSwordArtOnline settings val field <- swordArtOnline .:? txt .!= mempty pure field parseSwordArtOnlineFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseSwordArtOnlineFields settings txts val = do swordArtOnline <- parseSwordArtOnline settings val helper swordArtOnline txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Tea.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTea :: FromJSON a => FakerSettings -> Value -> Parser a parseTea settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" tea <- faker .: "tea" pure tea parseTea settings val = fail $ "expected Object, but got " <> (show val) parseTeaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTeaField settings txt val = do tea <- parseTea settings val field <- tea .:? txt .!= mempty pure field parseTeaFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTeaFields settings txts val = do tea <- parseTea settings val helper tea txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedTeaFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedTeaFields settings txts val = do tea <- parseTea settings val helper tea txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v
src/Faker/Provider/Team.hs view
@@ -17,28 +17,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTeam :: FromJSON a => FakerSettings -> Value -> Parser a parseTeam settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" team <- faker .: "team" pure team parseTeam settings val = fail $ "expected Object, but got " <> (show val) parseTeamField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTeamField settings txt val = do team <- parseTeam settings val field <- team .:? txt .!= mempty pure field parseTeamFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTeamFields settings txts val = do team <- parseTeam settings val helper team txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,7 +49,7 @@ parseUnresolvedTeamField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedTeamField settings txt val = do@@ -97,10 +98,10 @@ $(genProvider "team" "team_prefix") -resolveTeamText :: (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+resolveTeamText :: (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveTeamText = genericResolver' resolveTeamField -resolveTeamField :: (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+resolveTeamField :: (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveTeamField settings field@"creature" = cachedRandomVec "team" field teamCreatureProvider settings resolveTeamField settings "Address.state" =
src/Faker/Provider/TheExpanse.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTheExpanse :: FromJSON a => FakerSettings -> Value -> Parser a parseTheExpanse settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" theExpanse <- faker .: "the_expanse" pure theExpanse parseTheExpanse settings val = fail $ "expected Object, but got " <> (show val) parseTheExpanseField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTheExpanseField settings txt val = do theExpanse <- parseTheExpanse settings val field <- theExpanse .:? txt .!= mempty pure field parseTheExpanseFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTheExpanseFields settings txts val = do theExpanse <- parseTheExpanse settings val helper theExpanse txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/TheItCrowd.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTheItCrowd :: FromJSON a => FakerSettings -> Value -> Parser a parseTheItCrowd settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" theItCrowd <- faker .: "the_it_crowd" pure theItCrowd parseTheItCrowd settings val = fail $ "expected Object, but got " <> (show val) parseTheItCrowdField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTheItCrowdField settings txt val = do theItCrowd <- parseTheItCrowd settings val field <- theItCrowd .:? txt .!= mempty pure field parseTheItCrowdFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTheItCrowdFields settings txts val = do theItCrowd <- parseTheItCrowd settings val helper theItCrowd txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/TheThickOfIt.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTheThickOfIt :: FromJSON a => FakerSettings -> Value -> Parser a parseTheThickOfIt settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" theThickOfIt <- faker .: "the_thick_of_it" pure theThickOfIt@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseTheThickOfItField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTheThickOfItField settings txt val = do theThickOfIt <- parseTheThickOfIt settings val field <- theThickOfIt .:? txt .!= mempty pure field parseTheThickOfItFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTheThickOfItFields settings txts val = do theThickOfIt <- parseTheThickOfIt settings val helper theThickOfIt txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Tolkien.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTolkien :: FromJSON a => FakerSettings -> Value -> Parser a parseTolkien settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" tolkien <- faker .: "tolkien" pure tolkien parseTolkien settings val = fail $ "expected Object, but got " <> (show val) parseTolkienField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTolkienField settings txt val = do tolkien <- parseTolkien settings val field <- tolkien .:? txt .!= mempty pure field parseTolkienFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTolkienFields settings txts val = do tolkien <- parseTolkien settings val helper tolkien txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedTolkienFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedTolkienFields settings txts val = do tolkien <- parseTolkien settings val helper tolkien txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v
src/Faker/Provider/Touhou.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTouhou :: FromJSON a => FakerSettings -> Value -> Parser a parseTouhou settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" touhou <- games .: "touhou"@@ -24,19 +25,19 @@ parseTouhou settings val = fail $ "expected Object, but got " <> (show val) parseTouhouField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTouhouField settings txt val = do touhou <- parseTouhou settings val field <- touhou .:? txt .!= mempty pure field parseTouhouFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTouhouFields settings txts val = do touhou <- parseTouhou settings val helper touhou txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -49,14 +50,14 @@ parseUnresolvedTouhouFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedTouhouFields settings txts val = do touhou <- parseTouhou settings val helper touhou txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v
src/Faker/Provider/TwinPeaks.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseTwinPeaks :: FromJSON a => FakerSettings -> Value -> Parser a parseTwinPeaks settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" twinPeaks <- faker .: "twin_peaks" pure twinPeaks parseTwinPeaks settings val = fail $ "expected Object, but got " <> (show val) parseTwinPeaksField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseTwinPeaksField settings txt val = do twinPeaks <- parseTwinPeaks settings val field <- twinPeaks .:? txt .!= mempty pure field parseTwinPeaksFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseTwinPeaksFields settings txts val = do twinPeaks <- parseTwinPeaks settings val helper twinPeaks txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/UmphreysMcgee.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseUmphreysMcgee :: FromJSON a => FakerSettings -> Value -> Parser a parseUmphreysMcgee settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" umphreysMcgee <- faker .: "umphreys_mcgee" pure umphreysMcgee@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseUmphreysMcgeeField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseUmphreysMcgeeField settings txt val = do umphreysMcgee <- parseUmphreysMcgee settings val field <- umphreysMcgee .:? txt .!= mempty pure field parseUmphreysMcgeeFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseUmphreysMcgeeFields settings txts val = do umphreysMcgee <- parseUmphreysMcgee settings val helper umphreysMcgee txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/University.hs view
@@ -18,28 +18,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseUniversity :: FromJSON a => FakerSettings -> Value -> Parser a parseUniversity settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" university <- faker .: "university" pure university parseUniversity settings val = fail $ "expected Object, but got " <> (show val) parseUniversityField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseUniversityField settings txt val = do university <- parseUniversity settings val field <- university .:? txt .!= mempty pure field parseUniversityFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseUniversityFields settings txts val = do university <- parseUniversity settings val helper university txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -49,7 +50,7 @@ parseUnresolvedUniversityField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedUniversityField settings txt val = do@@ -76,11 +77,11 @@ resolveUniversityText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveUniversityText = genericResolver' resolveUniversityField resolveUniversityField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveUniversityField settings "University.prefix" = cachedRandomVec "university" "prefix" universityPrefixProvider settings resolveUniversityField settings "University.suffix" =
src/Faker/Provider/VForVendetta.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseVForVendetta :: FromJSON a => FakerSettings -> Value -> Parser a parseVForVendetta settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" vForVendetta <- faker .: "v_for_vendetta" pure vForVendetta@@ -26,19 +27,19 @@ fail $ "expected Object, but got " <> (show val) parseVForVendettaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseVForVendettaField settings txt val = do vForVendetta <- parseVForVendetta settings val field <- vForVendetta .:? txt .!= mempty pure field parseVForVendettaFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseVForVendettaFields settings txts val = do vForVendetta <- parseVForVendetta settings val helper vForVendetta txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Vehicle.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseVehicle :: FromJSON a => FakerSettings -> Value -> Parser a parseVehicle settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" vehicle <- faker .: "vehicle" pure vehicle parseVehicle settings val = fail $ "expected Object, but got " <> (show val) parseVehicleField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseVehicleField settings txt val = do vehicle <- parseVehicle settings val field <- vehicle .:? txt .!= mempty pure field parseVehicleFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseVehicleFields settings txts val = do vehicle <- parseVehicle settings val helper vehicle txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -47,7 +48,7 @@ parseUnresolvedVehicleField :: (FromJSON a, Monoid a) => FakerSettings- -> Text+ -> AesonKey -> Value -> Parser (Unresolved a) parseUnresolvedVehicleField settings txt val = do@@ -116,11 +117,11 @@ vehicleLicensePlateProvider _ = pure $ pure $ pure "???-###" resolveVehicleText ::- (MonadIO m, MonadThrow m) => FakerSettings -> Text -> m Text+ (MonadIO m, MonadThrow m) => FakerSettings -> AesonKey -> m Text resolveVehicleText settings txt = genericResolver settings txt resolveVehicleField resolveVehicleField ::- (MonadThrow m, MonadIO m) => FakerSettings -> Text -> m Text+ (MonadThrow m, MonadIO m) => FakerSettings -> AesonKey -> m Text resolveVehicleField settings str = throwM $ InvalidField "vehicle" str $(genParsers "vehicle" ["models_by_make", "BMW"])
src/Faker/Provider/VentureBros.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseVentureBros :: FromJSON a => FakerSettings -> Value -> Parser a parseVentureBros settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" ventureBros <- faker .: "venture_bros" pure ventureBros parseVentureBros settings val = fail $ "expected Object, but got " <> (show val) parseVentureBrosField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseVentureBrosField settings txt val = do ventureBros <- parseVentureBros settings val field <- ventureBros .:? txt .!= mempty pure field parseVentureBrosFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseVentureBrosFields settings txts val = do ventureBros <- parseVentureBros settings val helper ventureBros txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Verbs.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseVerbs :: FromJSON a => FakerSettings -> Value -> Parser a parseVerbs settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" verbs <- faker .: "verbs" pure verbs parseVerbs settings val = fail $ "expected Object, but got " <> (show val) parseVerbsField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseVerbsField settings txt val = do verbs <- parseVerbs settings val field <- verbs .:? txt .!= mempty pure field parseVerbsFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseVerbsFields settings txts val = do verbs <- parseVerbs settings val helper verbs txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Volleyball.hs view
@@ -14,28 +14,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseVolleyball :: FromJSON a => FakerSettings -> Value -> Parser a parseVolleyball settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" volleyball <- faker .: "volleyball" pure volleyball parseVolleyball settings val = fail $ "expected Object, but got " <> (show val) parseVolleyballField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseVolleyballField settings txt val = do volleyball <- parseVolleyball settings val field <- volleyball .:? txt .!= mempty pure field parseVolleyballFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseVolleyballFields settings txts val = do volleyball <- parseVolleyball settings val helper volleyball txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x@@ -48,14 +49,14 @@ parseUnresolvedVolleyballFields :: (FromJSON a, Monoid a) => FakerSettings- -> [Text]+ -> [AesonKey] -> Value -> Parser (Unresolved a) parseUnresolvedVolleyballFields settings txts val = do volleyball <- parseVolleyball settings val helper volleyball txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser (Unresolved a)+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser (Unresolved a) helper a [] = do v <- parseJSON a pure $ pure v@@ -86,11 +87,3 @@ $(genParser "volleyball" "formation") $(genProvider "volleyball" "formation")--------
src/Faker/Provider/WarhammerFantasy.hs view
@@ -14,9 +14,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseWarhammerFantasy :: FromJSON a => FakerSettings -> Value -> Parser a parseWarhammerFantasy settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" warhammerFantasy <- games .: "warhammer_fantasy"@@ -25,19 +26,19 @@ fail $ "expected Object, but got " <> (show val) parseWarhammerFantasyField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseWarhammerFantasyField settings txt val = do warhammerFantasy <- parseWarhammerFantasy settings val field <- warhammerFantasy .:? txt .!= mempty pure field parseWarhammerFantasyFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseWarhammerFantasyFields settings txts val = do warhammerFantasy <- parseWarhammerFantasy settings val helper warhammerFantasy txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Witcher.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseWitcher :: FromJSON a => FakerSettings -> Value -> Parser a parseWitcher settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" witcher <- games .: "witcher"@@ -26,19 +27,19 @@ parseWitcher settings val = fail $ "expected Object, but got " <> (show val) parseWitcherField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseWitcherField settings txt val = do witcher <- parseWitcher settings val field <- witcher .:? txt .!= mempty pure field parseWitcherFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseWitcherFields settings txts val = do witcher <- parseWitcher settings val helper witcher txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/WorldCup.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseWorldCup :: FromJSON a => FakerSettings -> Value -> Parser a parseWorldCup settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" worldCup <- faker .: "world_cup" pure worldCup parseWorldCup settings val = fail $ "expected Object, but got " <> (show val) parseWorldCupField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseWorldCupField settings txt val = do worldCup <- parseWorldCup settings val field <- worldCup .:? txt .!= mempty pure field parseWorldCupFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseWorldCupFields settings txts val = do worldCup <- parseWorldCup settings val helper worldCup txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/WorldOfWarcraft.hs view
@@ -16,9 +16,10 @@ import Faker.Provider.TH import Language.Haskell.TH + parseWorldOfWarcraft :: FromJSON a => FakerSettings -> Value -> Parser a parseWorldOfWarcraft settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" worldOfWarcraft <- games .: "world_of_warcraft"@@ -27,19 +28,19 @@ fail $ "expected Object, but got " <> (show val) parseWorldOfWarcraftField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseWorldOfWarcraftField settings txt val = do worldOfWarcraft <- parseWorldOfWarcraft settings val field <- worldOfWarcraft .:? txt .!= mempty pure field parseWorldOfWarcraftFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseWorldOfWarcraftFields settings txts val = do worldOfWarcraft <- parseWorldOfWarcraft settings val helper worldOfWarcraft txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Yoda.hs view
@@ -16,28 +16,29 @@ import Faker.Provider.TH import Language.Haskell.TH + parseYoda :: FromJSON a => FakerSettings -> Value -> Parser a parseYoda settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" yoda <- faker .: "yoda" pure yoda parseYoda settings val = fail $ "expected Object, but got " <> (show val) parseYodaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseYodaField settings txt val = do yoda <- parseYoda settings val field <- yoda .:? txt .!= mempty pure field parseYodaFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseYodaFields settings txts val = do yoda <- parseYoda settings val helper yoda txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
src/Faker/Provider/Zelda.hs view
@@ -18,7 +18,7 @@ parseZelda :: FromJSON a => FakerSettings -> Value -> Parser a parseZelda settings (Object obj) = do- en <- obj .: (getLocale settings)+ en <- obj .: (getLocaleKey settings) faker <- en .: "faker" games <- faker .: "games" zelda <- games .: "zelda"@@ -26,19 +26,19 @@ parseZelda settings val = fail $ "expected Object, but got " <> (show val) parseZeldaField ::- (FromJSON a, Monoid a) => FakerSettings -> Text -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> AesonKey -> Value -> Parser a parseZeldaField settings txt val = do zelda <- parseZelda settings val field <- zelda .:? txt .!= mempty pure field parseZeldaFields ::- (FromJSON a, Monoid a) => FakerSettings -> [Text] -> Value -> Parser a+ (FromJSON a, Monoid a) => FakerSettings -> [AesonKey] -> Value -> Parser a parseZeldaFields settings txts val = do zelda <- parseZelda settings val helper zelda txts where- helper :: (FromJSON a) => Value -> [Text] -> Parser a+ helper :: (FromJSON a) => Value -> [AesonKey] -> Parser a helper a [] = parseJSON a helper (Object a) (x:xs) = do field <- a .: x
test/AddressSpec.hs view
@@ -12,6 +12,7 @@ import Test.Hspec import TestImport import Faker.Internal+import Faker.Internal.Types (aesonKeyToText) fakerException :: Selector FakerException fakerException = const True@@ -24,14 +25,14 @@ resolveUnresolved defaultFakerSettings (pure $ pure $ "32-????-####")- (\s t -> pure t)+ (\s t -> pure $ aesonKeyToText t) txt `shouldBeOneOf` ["32-SZJX-4351", "32-GODI-8116"] it "doesn't get confused with garbage" $ do txt <- resolveUnresolved defaultFakerSettings (pure $ pure $ "abjakf-324jak")- (\s t -> pure t)+ (\s t -> pure $ aesonKeyToText t) txt `shouldBe` "abjakf-324jak" describe "Address functions" $ do it "basic check" $ do