swarm-0.7.0.0: 2D resource gathering game with programmable robots
LicenseBSD-3-Clause
Safe HaskellNone
LanguageHaskell2010

Swarm.Game.Scenario.Topography.Structure.Recognition

Description

Public interface for structure recognizer.

Note that we only support "recognition" of structures defined at the scenario-global level.

Synopsis

Documentation

data RecognitionState b a Source #

The type parameters, b, and a, correspond to Cell and Entity, respectively.

Constructors

RecognitionState 

Fields

Instances

Instances details
Generic (RecognitionState b a) Source # 
Instance details

Defined in Swarm.Game.Scenario.Topography.Structure.Recognition

Associated Types

type Rep (RecognitionState b a) 
Instance details

Defined in Swarm.Game.Scenario.Topography.Structure.Recognition

type Rep (RecognitionState b a) = D1 ('MetaData "RecognitionState" "Swarm.Game.Scenario.Topography.Structure.Recognition" "swarm-0.7.0.0-IuFfgHrMoE7JrptOBRVOwx-swarm-topography" 'False) (C1 ('MetaCons "RecognitionState" 'PrefixI 'True) (S1 ('MetaSel ('Just "_foundStructures") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (FoundRegistry b a)) :*: S1 ('MetaSel ('Just "_recognitionLog") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SearchLog a])))
type Rep (RecognitionState b a) Source # 
Instance details

Defined in Swarm.Game.Scenario.Topography.Structure.Recognition

type Rep (RecognitionState b a) = D1 ('MetaData "RecognitionState" "Swarm.Game.Scenario.Topography.Structure.Recognition" "swarm-0.7.0.0-IuFfgHrMoE7JrptOBRVOwx-swarm-topography" 'False) (C1 ('MetaCons "RecognitionState" 'PrefixI 'True) (S1 ('MetaSel ('Just "_foundStructures") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (FoundRegistry b a)) :*: S1 ('MetaSel ('Just "_recognitionLog") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SearchLog a])))

foundStructures :: forall b1 a b2 f. Functor f => (FoundRegistry b1 a -> f (FoundRegistry b2 a)) -> RecognitionState b1 a -> f (RecognitionState b2 a) Source #

recognitionLog :: forall b a f. Functor f => ([SearchLog a] -> f [SearchLog a]) -> RecognitionState b a -> f (RecognitionState b a) Source #