packages feed

A-gent-0.11.0.18: src/Agent/LLM/Message.hs

{-# OPTIONS_GHC -Wall -Werror #-}

{-# LANGUAGE NoGeneralizedNewtypeDeriving #-}
{-# LANGUAGE Safe                         #-}

--------------------------------------------------------------------------------

-- |
-- Copyright  : (c) 2026 SPISE MISU ApS
-- License    : SSPL-1.0 OR AGPL-3.0-only
-- Maintainer : SPISE MISU <mail+hackage@spisemisu.com>
-- Stability  : experimental

--------------------------------------------------------------------------------

module Agent.LLM.Message
  ( Message(..)
  , AbsoluteFilePath
  , Files
  , Filter
  )
where

--------------------------------------------------------------------------------

import           Internal.LLM ( AbsoluteFilePath, Files, Filter )

--------------------------------------------------------------------------------

data Message
  = Atom !String !Files
  | List !(Maybe Filter)
  | Path !Bool !(Maybe AbsoluteFilePath)
  | Repo
  | Root
  | Send ![String]
  | Text !String
  | Tmpl !(Maybe [AbsoluteFilePath])

instance Show Message where
  show (Atom _ _) = "Atom"
  show (List _)   = "List"
  show (Path _ _) = "Path"
  show  Repo      = "Repo"
  show  Root      = "Root"
  show (Send _)   = "Send"
  show (Text _)   = "Text"
  show (Tmpl _)   = "Tmpl"