module Swarm.TUI.Editor.Json where
import Data.Text (Text)
import Data.Yaml as Y
import GHC.Generics (Generic)
import Swarm.Game.Entity (Entity)
import Swarm.Game.Scenario.Topography.WorldDescription
import Swarm.Language.Syntax (Syntax)
import Swarm.Language.Text.Markdown (Document)
data SkeletonScenario = SkeletonScenario
{ SkeletonScenario -> Int
version :: Int
, SkeletonScenario -> Text
name :: Text
, SkeletonScenario -> Document Syntax
description :: Document Syntax
, SkeletonScenario -> Bool
creative :: Bool
, SkeletonScenario -> [Entity]
entities :: [Entity]
, SkeletonScenario -> WorldDescriptionPaint
world :: WorldDescriptionPaint
, SkeletonScenario -> [String]
robots :: [String]
}
deriving ((forall x. SkeletonScenario -> Rep SkeletonScenario x)
-> (forall x. Rep SkeletonScenario x -> SkeletonScenario)
-> Generic SkeletonScenario
forall x. Rep SkeletonScenario x -> SkeletonScenario
forall x. SkeletonScenario -> Rep SkeletonScenario x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. SkeletonScenario -> Rep SkeletonScenario x
from :: forall x. SkeletonScenario -> Rep SkeletonScenario x
$cto :: forall x. Rep SkeletonScenario x -> SkeletonScenario
to :: forall x. Rep SkeletonScenario x -> SkeletonScenario
Generic)
instance ToJSON SkeletonScenario