cleveland-0.1.0: Testing framework for Morley.
Safe HaskellNone
LanguageHaskell2010

Hedgehog.Gen.Michelson.Typed

Synopsis

Documentation

genBigMap :: forall k v m. (MonadGen m, Ord k, WellTypedToT k, WellTypedToT v, Comparable (ToT k)) => m k -> m v -> m (BigMap k v) Source #

genEpAddress :: (MonadGen m, GenBase m ~ Identity) => m EpAddress Source #

genValueKeyHash :: MonadGen m => m (Value' instr 'TKeyHash) Source #

genValueMutez :: MonadGen m => m (Value' instr 'TMutez) Source #

genValueInt :: MonadGen m => m (Value' instr 'TInt) Source #

genValueList :: (MonadGen m, SingI a) => m (Value' instr a) -> m (Value' instr ('TList a)) Source #

genValueUnit :: Applicative m => m (Value' instr 'TUnit) Source #

genValuePair :: MonadGen m => m (Value' instr a) -> m (Value' instr b) -> m (Value' instr ('TPair a b)) Source #

genValueTimestamp :: MonadGen m => m (Value' instr 'TTimestamp) Source #

genValueChestAndKey :: MonadGen m => m (Value' instr 'TChest, Value' instr 'TChestKey) Source #

genValue :: forall t m. (MonadGen m, GenBase m ~ Identity, HasNoOp t, WellTyped t) => m (Value' Instr t) Source #

genValue' :: (MonadGen m, GenBase m ~ Identity, HasNoOp t, WellTyped t) => Sing t -> m (Value' Instr t) Source #

genSimpleInstr :: (MonadGen m, inp ~ (x ': xs), SingI x) => m (Instr inp inp) Source #

Generate a simple instruction. Ideally instruction generator should produce instructions containing all possible primitive instructions. In our case we consider only a few primitive instructions and pick one from a hardcoded list. Hence we call it "simple". Another limitation is that input stack and output stack types must be identical and non-empty.