swarm-0.6.0.0: 2D resource gathering game with programmable robots
LicenseBSD-3-Clause
Safe HaskellSafe-Inferred
LanguageHaskell2010

Swarm.Game.Value

Description

Conversions from native Haskell values to values in the swarm language.

Synopsis

Patterns

type VRect = Value Source #

pattern VRect :: Integer -> Integer -> Integer -> Integer -> VRect Source #

Conversions

class Valuable a where Source #

Conversion from native Haskell types to their swarm-lang equivalents, useful for implementing swarm commands in Haskell.

Methods

asValue :: a -> Value Source #

Instances

Instances details
Valuable Int32 Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Int32 -> Value Source #

Valuable Entity Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Entity -> Value Source #

Valuable Robot Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Robot -> Value Source #

Valuable Location Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Location -> Value Source #

Valuable AreaDimensions Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: AreaDimensions -> Value Source #

Valuable Direction Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Direction -> Value Source #

Valuable Text Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Text -> Value Source #

Valuable Integer Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Integer -> Value Source #

Valuable () Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: () -> Value Source #

Valuable Bool Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Bool -> Value Source #

Valuable Int Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Int -> Value Source #

Valuable a => Valuable (V2 a) Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: V2 a -> Value Source #

Valuable a => Valuable (Maybe a) Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Maybe a -> Value Source #

Valuable a => Valuable [a] Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: [a] -> Value Source #

(Valuable a, Valuable b) => Valuable (Either a b) Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: Either a b -> Value Source #

(Valuable a, Valuable b) => Valuable (a, b) Source # 
Instance details

Defined in Swarm.Game.Value

Methods

asValue :: (a, b) -> Value Source #