mirror of
https://github.com/urbit/shrub.git
synced 2025-01-02 09:32:29 +03:00
68 lines
1.3 KiB
Haskell
68 lines
1.3 KiB
Haskell
module Vere.FX(FX, Eff(..), Blit(..), Varience(..), PutDel(..)) where
|
|
|
|
import UrbitPrelude hiding (Term)
|
|
import Urbit.Time
|
|
import Vere.Ovum
|
|
|
|
import qualified Vere.Ames as Ames
|
|
import qualified Vere.Http.Client as Client
|
|
import qualified Vere.Http.Server as Server
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
data PutDel = PDPut | PDDel
|
|
deriving (Eq, Ord, Show)
|
|
|
|
type FX = [(Path, Lenient Eff)]
|
|
|
|
data Eff
|
|
= EHttpServer Server.Eff
|
|
| EHttpClient Client.Eff
|
|
| EAmes Ames.Eff
|
|
| EBbye Noun
|
|
| EBehn Noun
|
|
| EBlit [Blit]
|
|
| EBoat Noun
|
|
| EClay Noun
|
|
| ECrud Noun
|
|
| EDirk Noun
|
|
| EDoze (Maybe Wen)
|
|
| EErgo Noun
|
|
| EExit Noun
|
|
| EFlog Noun
|
|
| EForm Noun
|
|
| EHill [Term]
|
|
| EInit
|
|
| ELogo Noun
|
|
| EMass Noun
|
|
| ENewt Noun
|
|
| EOgre Noun
|
|
| ESend [Blit]
|
|
| ESync Noun
|
|
| ETerm Noun
|
|
| EThou Noun
|
|
| ETurf (Maybe (PutDel, [Text])) -- TODO Unsure
|
|
| EVega Noun
|
|
| EWest Noun
|
|
| EWoot Noun
|
|
deriving (Eq, Ord, Show)
|
|
|
|
data Blit
|
|
= Bel
|
|
| Clr
|
|
| Hop Word64
|
|
| Lin [Char]
|
|
| Mor
|
|
| Sag Path Noun
|
|
| Sav Path Atom
|
|
| Url Text
|
|
deriving (Eq, Ord, Show)
|
|
|
|
data Varience = Gold | Iron | Lead
|
|
|
|
deriveNoun ''Blit
|
|
deriveNoun ''Eff
|
|
deriveNoun ''PutDel
|
|
deriveNoun ''Varience
|