Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- runChallenge :: forall i k r. (HasFilter i, Ord (CustomFilter i), Ord k, Monoid r) => [i] -> Challenge i k r -> (Results k r, Bool)
- getClues :: forall i k r. (HasFilter i, Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> [i] -> MonoidalMap [k] ClueState
- getRewards :: forall i k r. (HasFilter i, Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> [i] -> r
- empty :: Challenge i k r
- reward :: forall i k r. (Ord k, Ord (CustomFilter i), Commutative r, Monoid r) => r -> Challenge i k r
- clue :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => [k] -> Challenge i k r -> Challenge i k r
- andThen :: Challenge i k r -> Challenge i k r -> Challenge i k r
- both :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> Challenge i k r -> Challenge i k r
- eitherC :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> Challenge i k r -> Challenge i k r
- bottom :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r
- gate :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => InputFilter i -> Challenge i k r -> Challenge i k r
- always :: InputFilter i
- never :: InputFilter i
- andF :: InputFilter i -> InputFilter i -> InputFilter i
- orF :: InputFilter i -> InputFilter i -> InputFilter i
- notF :: InputFilter i -> InputFilter i
- custom :: CustomFilter i -> InputFilter i
- class HasFilter i where
- data CustomFilter i
- filterMatches :: CustomFilter i -> i -> Bool
- seen :: ClueState
- completed :: ClueState
- failed :: ClueState
- quickspec_laws :: [(String, Property)]
- data Challenge i k r
- data MonoidalMap k a
- data Results k r
- data ClueState
Observations
runChallenge :: forall i k r. (HasFilter i, Ord (CustomFilter i), Ord k, Monoid r) => [i] -> Challenge i k r -> (Results k r, Bool) Source #
getClues :: forall i k r. (HasFilter i, Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> [i] -> MonoidalMap [k] ClueState Source #
getRewards :: forall i k r. (HasFilter i, Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> [i] -> r Source #
Challenges
reward :: forall i k r. (Ord k, Ord (CustomFilter i), Commutative r, Monoid r) => r -> Challenge i k r Source #
clue :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => [k] -> Challenge i k r -> Challenge i k r Source #
both :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> Challenge i k r -> Challenge i k r Source #
eitherC :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => Challenge i k r -> Challenge i k r -> Challenge i k r Source #
gate :: forall i k r. (Ord (CustomFilter i), Ord k, Monoid r) => InputFilter i -> Challenge i k r -> Challenge i k r Source #
Input filters
always :: InputFilter i Source #
never :: InputFilter i Source #
andF :: InputFilter i -> InputFilter i -> InputFilter i Source #
orF :: InputFilter i -> InputFilter i -> InputFilter i Source #
notF :: InputFilter i -> InputFilter i Source #
custom :: CustomFilter i -> InputFilter i Source #
class HasFilter i where Source #
data CustomFilter i Source #
filterMatches :: CustomFilter i -> i -> Bool Source #
Instances
HasFilter Test Source # | |
Defined in Scavenge.InputFilter data CustomFilter Test :: Type Source # filterMatches :: CustomFilter Test -> Test -> Bool Source # |
Clue states
Laws
quickspec_laws :: [(String, Property)] Source #
Types
Instances
(HasFilter i, Arbitrary i, Ord (CustomFilter i), Ord k, Monoid r, Ord r) => Observe [i] (Results k r, Bool) (Challenge i k r) Source # | |
(Show (CustomFilter i), Ord (CustomFilter i), Ord k, Show k, Monoid r, Show r) => Show (Challenge i k r) Source # | |
(Semigroup r, Ord k, Ord (CustomFilter i)) => Semigroup (Challenge i k r) Source # | |
(Monoid r, Ord k, Ord (CustomFilter i)) => Monoid (Challenge i k r) Source # | |
(Arbitrary (CustomFilter i), Ord (CustomFilter i), Arbitrary k, Ord k, Monoid r, Commutative r, Arbitrary r, Eq r) => Arbitrary (Challenge i k r) Source # | |
data MonoidalMap k a #
A Map
with monoidal accumulation
Instances
Instances
Instances
Bounded ClueState Source # | |
Enum ClueState Source # | |
Defined in Scavenge.ClueState succ :: ClueState -> ClueState # pred :: ClueState -> ClueState # fromEnum :: ClueState -> Int # enumFrom :: ClueState -> [ClueState] # enumFromThen :: ClueState -> ClueState -> [ClueState] # enumFromTo :: ClueState -> ClueState -> [ClueState] # enumFromThenTo :: ClueState -> ClueState -> ClueState -> [ClueState] # | |
Eq ClueState Source # | |
Ord ClueState Source # | |
Defined in Scavenge.ClueState | |
Show ClueState Source # | |
Semigroup ClueState Source # | |
Monoid ClueState Source # | |
Arbitrary ClueState Source # | |
Observe () ClueState ClueState Source # | |
Defined in Scavenge.ClueState |