module U.Codebase.Sqlite.Causal ( DbCausal, GDbCausal (..), SyncCausalFormat, SyncCausalFormat' (..), ) where import Data.Vector (Vector) import U.Codebase.Sqlite.DbId (BranchHashId, CausalHashId) import Unison.Prelude data GDbCausal causalHash valueHash = DbCausal { forall causalHash valueHash. GDbCausal causalHash valueHash -> causalHash selfHash :: causalHash, forall causalHash valueHash. GDbCausal causalHash valueHash -> valueHash valueHash :: valueHash, forall causalHash valueHash. GDbCausal causalHash valueHash -> Set causalHash parents :: Set causalHash } type DbCausal = GDbCausal CausalHashId BranchHashId data SyncCausalFormat' causalHash valueHash = SyncCausalFormat { forall causalHash valueHash. SyncCausalFormat' causalHash valueHash -> valueHash valueHash :: valueHash, forall causalHash valueHash. SyncCausalFormat' causalHash valueHash -> Vector causalHash parents :: Vector causalHash } deriving stock (SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool (SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool) -> (SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool) -> Eq (SyncCausalFormat' causalHash valueHash) forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a forall causalHash valueHash. (Eq valueHash, Eq causalHash) => SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool $c== :: forall causalHash valueHash. (Eq valueHash, Eq causalHash) => SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool == :: SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool $c/= :: forall causalHash valueHash. (Eq valueHash, Eq causalHash) => SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool /= :: SyncCausalFormat' causalHash valueHash -> SyncCausalFormat' causalHash valueHash -> Bool Eq, Int -> SyncCausalFormat' causalHash valueHash -> ShowS [SyncCausalFormat' causalHash valueHash] -> ShowS SyncCausalFormat' causalHash valueHash -> String (Int -> SyncCausalFormat' causalHash valueHash -> ShowS) -> (SyncCausalFormat' causalHash valueHash -> String) -> ([SyncCausalFormat' causalHash valueHash] -> ShowS) -> Show (SyncCausalFormat' causalHash valueHash) forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a forall causalHash valueHash. (Show valueHash, Show causalHash) => Int -> SyncCausalFormat' causalHash valueHash -> ShowS forall causalHash valueHash. (Show valueHash, Show causalHash) => [SyncCausalFormat' causalHash valueHash] -> ShowS forall causalHash valueHash. (Show valueHash, Show causalHash) => SyncCausalFormat' causalHash valueHash -> String $cshowsPrec :: forall causalHash valueHash. (Show valueHash, Show causalHash) => Int -> SyncCausalFormat' causalHash valueHash -> ShowS showsPrec :: Int -> SyncCausalFormat' causalHash valueHash -> ShowS $cshow :: forall causalHash valueHash. (Show valueHash, Show causalHash) => SyncCausalFormat' causalHash valueHash -> String show :: SyncCausalFormat' causalHash valueHash -> String $cshowList :: forall causalHash valueHash. (Show valueHash, Show causalHash) => [SyncCausalFormat' causalHash valueHash] -> ShowS showList :: [SyncCausalFormat' causalHash valueHash] -> ShowS Show) type SyncCausalFormat = SyncCausalFormat' CausalHashId BranchHashId