Safe Haskell | Safe |
---|---|
Language | Haskell98 |
Data.Elements
Description
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 | |
Show MasyuPearl Source # | |
Defined in Data.Elements Methods 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 #
Constructors
SlovakClue !Int !Int |
A cell that is optionally bisected by a diagonal (up-right or down-right).
data MarkedLine a Source #
A marked line in a grid, given by start and end points.
Constructors
MarkedLine a a |
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.
Constructors
SlalomForward | |
SlalomBackward |
Instances
Show SlalomDiag Source # | |
Defined in Data.Elements Methods 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.
Instances
Eq KropkiDot Source # | |
Ord KropkiDot Source # | |
Show KropkiDot Source # | |
FromChar KropkiDot Source # | |
Diagonal marking for Prime Place: forward diag?, backward diag?
Constructors
Black |
Constructors
Fish |
Constructors
Star |
Constructors
Crossing |
data DigitRange Source #
Constructors
DigitRange !Int !Int |
Instances
Eq DigitRange Source # | |
Defined in Data.Elements | |
Show DigitRange Source # | |
Defined in Data.Elements Methods showsPrec :: Int -> DigitRange -> ShowS # show :: DigitRange -> String # showList :: [DigitRange] -> ShowS # | |
FromString DigitRange Source # | |
Defined in Parse.Util Methods parseString :: String -> Parser DigitRange Source # |
digitList :: DigitRange -> [Int] Source #
Constructors
MEnd |
Constructors
PlainNode |
Constructors
RGreater | |
RLess | |
REqual | |
RUndetermined |
type GreaterClue = [Relation] Source #
data GalaxyCentre Source #
Constructors
GalaxyCentre |
Instances
FromChar GalaxyCentre Source # | |
Defined in Parse.Util |
data PlacedTent Source #
Instances
FromChar PlacedTent Source # | |
Defined in Parse.Util |
Constructors
Tree |