Safe Haskell | Safe |
---|---|
Language | Haskell98 |
Types for a variety of puzzle elements.
Synopsis
- type Clue a = Maybe a
- data MasyuPearl
- type MasyuClue = Clue MasyuPearl
- type IntClue = Clue Int
- data CompassC = CC (Maybe Int) (Maybe Int) (Maybe Int) (Maybe Int)
- type CompassClue = Clue CompassC
- data SlovakClue = SlovakClue !Int !Int
- data Tightfit a
- data MarkedLine a = MarkedLine a a
- data MarkedWord = MW {}
- type Loop a = [Edge a]
- type VertexLoop = [N]
- type Thermometer = [C]
- data SlalomDiag
- data Shade = Shade Bool Bool
- data KropkiDot
- newtype TapaClue = TapaClue [Int]
- newtype PrimeDiag = PrimeDiag (Bool, Bool)
- data Black = Black
- data Fish = Fish
- data Star = Star
- data Crossing = Crossing
- type BahnhofClue = Either Int Crossing
- data DigitRange = DigitRange !Int !Int
- digitList :: DigitRange -> [Int]
- data MEnd = MEnd
- data Fraction
- data PlainNode = PlainNode
- type Myopia = [Dir']
- data Relation
- = RGreater
- | RLess
- | REqual
- | RUndetermined
- type GreaterClue = [Relation]
- data GalaxyCentre = GalaxyCentre
- data PlacedTent = Tent Dir'
- data Tree = Tree
- data Pentomino = Pentomino Char
Documentation
data MasyuPearl Source #
Instances
Eq MasyuPearl Source # | |
Defined in Data.Elements (==) :: MasyuPearl -> MasyuPearl -> Bool # (/=) :: MasyuPearl -> MasyuPearl -> Bool # | |
Show MasyuPearl Source # | |
Defined in Data.Elements showsPrec :: Int -> MasyuPearl -> ShowS # show :: MasyuPearl -> String # showList :: [MasyuPearl] -> ShowS # | |
FromChar MasyuPearl Source # | |
Defined in Parse.Util |
type MasyuClue = Clue MasyuPearl Source #
A Compass clue, specifiying optional numbers in the four cardinal directions.
type CompassClue = Clue CompassC Source #
data SlovakClue Source #
SlovakClue !Int !Int |
A cell that is optionally bisected by a diagonal (up-right or down-right).
data MarkedWord Source #
A marked word in a letter grid, by its start and end coordinates.
type VertexLoop = [N] Source #
A loop consisting of straight segments of arbitrary angles between vertices.
type Thermometer = [C] Source #
A thermometer, as a list of coordinates from bulb to end. There should be at least two entries, entries should be distinct, and successive entries should be neighbours (diagonal neighbours are fine).
data SlalomDiag Source #
A forward or backward diagonal as occurring in the solution of a slalom puzzle.
Instances
Show SlalomDiag Source # | |
Defined in Data.Elements showsPrec :: Int -> SlalomDiag -> ShowS # show :: SlalomDiag -> String # showList :: [SlalomDiag] -> ShowS # | |
FromChar SlalomDiag Source # | |
Defined in Parse.Util |
Shadow along from the western and southern side, as used for afternoon skyscrapers.
Diagonal marking for Prime Place: forward diag?, backward diag?
data DigitRange Source #
DigitRange !Int !Int |
Instances
Eq DigitRange Source # | |
Defined in Data.Elements (==) :: DigitRange -> DigitRange -> Bool # (/=) :: DigitRange -> DigitRange -> Bool # | |
Show DigitRange Source # | |
Defined in Data.Elements showsPrec :: Int -> DigitRange -> ShowS # show :: DigitRange -> String # showList :: [DigitRange] -> ShowS # | |
FromString DigitRange Source # | |
Defined in Parse.Util parseString :: String -> Parser DigitRange Source # |
digitList :: DigitRange -> [Int] Source #
type GreaterClue = [Relation] Source #
data GalaxyCentre Source #
Instances
FromChar GalaxyCentre Source # | |
Defined in Parse.Util |
data PlacedTent Source #
Instances
FromChar PlacedTent Source # | |
Defined in Parse.Util |