unison-merge-0.0.0
Safe HaskellSafe-Inferred
LanguageHaskell2010

Unison.Merge

Contents

Synopsis

Documentation

Types

data CombinedDiffOp a Source #

The combined result of two diffs on the same thing.

Instances

Instances details
Functor CombinedDiffOp Source # 
Instance details

Defined in Unison.Merge.CombineDiffs

Methods

fmap :: (a -> b) -> CombinedDiffOp a -> CombinedDiffOp b #

(<$) :: a -> CombinedDiffOp b -> CombinedDiffOp a #

Show a => Show (CombinedDiffOp a) Source # 
Instance details

Defined in Unison.Merge.CombineDiffs

data DiffOp a Source #

A diff operation is one of:

  • An add (where nothing was)
  • A delete (of the thing that was)
  • An update (from old to new)

Constructors

DiffOp'Add !a 
DiffOp'Delete !a 
DiffOp'Update !(Updated a) 

Instances

Instances details
Foldable DiffOp Source # 
Instance details

Defined in Unison.Merge.DiffOp

Methods

fold :: Monoid m => DiffOp m -> m #

foldMap :: Monoid m => (a -> m) -> DiffOp a -> m #

foldMap' :: Monoid m => (a -> m) -> DiffOp a -> m #

foldr :: (a -> b -> b) -> b -> DiffOp a -> b #

foldr' :: (a -> b -> b) -> b -> DiffOp a -> b #

foldl :: (b -> a -> b) -> b -> DiffOp a -> b #

foldl' :: (b -> a -> b) -> b -> DiffOp a -> b #

foldr1 :: (a -> a -> a) -> DiffOp a -> a #

foldl1 :: (a -> a -> a) -> DiffOp a -> a #

toList :: DiffOp a -> [a] #

null :: DiffOp a -> Bool #

length :: DiffOp a -> Int #

elem :: Eq a => a -> DiffOp a -> Bool #

maximum :: Ord a => DiffOp a -> a #

minimum :: Ord a => DiffOp a -> a #

sum :: Num a => DiffOp a -> a #

product :: Num a => DiffOp a -> a #

Traversable DiffOp Source # 
Instance details

Defined in Unison.Merge.DiffOp

Methods

traverse :: Applicative f => (a -> f b) -> DiffOp a -> f (DiffOp b) #

sequenceA :: Applicative f => DiffOp (f a) -> f (DiffOp a) #

mapM :: Monad m => (a -> m b) -> DiffOp a -> m (DiffOp b) #

sequence :: Monad m => DiffOp (m a) -> m (DiffOp a) #

Functor DiffOp Source # 
Instance details

Defined in Unison.Merge.DiffOp

Methods

fmap :: (a -> b) -> DiffOp a -> DiffOp b #

(<$) :: a -> DiffOp b -> DiffOp a #

Show a => Show (DiffOp a) Source # 
Instance details

Defined in Unison.Merge.DiffOp

Methods

showsPrec :: Int -> DiffOp a -> ShowS #

show :: DiffOp a -> String #

showList :: [DiffOp a] -> ShowS #

data EitherWay a Source #

Alice exclusive-or Bob?

Constructors

Alice a 
Bob a 

Instances

Instances details
Functor EitherWay Source # 
Instance details

Defined in Unison.Merge.EitherWay

Methods

fmap :: (a -> b) -> EitherWay a -> EitherWay b #

(<$) :: a -> EitherWay b -> EitherWay a #

Show a => Show (EitherWay a) Source # 
Instance details

Defined in Unison.Merge.EitherWay

Eq a => Eq (EitherWay a) Source # 
Instance details

Defined in Unison.Merge.EitherWay

Methods

(==) :: EitherWay a -> EitherWay a -> Bool #

(/=) :: EitherWay a -> EitherWay a -> Bool #

data EitherWayI a Source #

Alice inclusive-or Bob?

Constructors

OnlyAlice a 
OnlyBob a 
AliceAndBob a 

Instances

Instances details
Functor EitherWayI Source # 
Instance details

Defined in Unison.Merge.EitherWayI

Methods

fmap :: (a -> b) -> EitherWayI a -> EitherWayI b #

(<$) :: a -> EitherWayI b -> EitherWayI a #

Show a => Show (EitherWayI a) Source # 
Instance details

Defined in Unison.Merge.EitherWayI

data HumanDiffOp ref Source #

A diff operation is one of:

  • An add (where nothing was)
  • A delete (of the thing that was)
  • An update (from old to new)
  • A propagated update (from old to new)
  • An alias of some definition(s) on the other side
  • A rename from some definition(s) on the other side

Instances

Instances details
Show ref => Show (HumanDiffOp ref) Source # 
Instance details

Defined in Unison.Merge.HumanDiffOp

Methods

showsPrec :: Int -> HumanDiffOp ref -> ShowS #

show :: HumanDiffOp ref -> String #

showList :: [HumanDiffOp ref] -> ShowS #

data LibdepDiffOp a Source #

Constructors

AddLibdep !a 
AddBothLibdeps !a !a 
DeleteLibdep 

data Rename Source #

A "rename" is a venn partition of two non-empty sets of names: both set differences and the set intersection.

Invariant: the sets are all disjoint Invariant: it is not the case that adds and deletes are both empty

Constructors

Rename 

data SimpleRenames Source #

A "simple" rename is one that moves one name to another, where neither the before- nor after-name have any aliases.

Constructors

SimpleRenames 

Fields

data Synhashed a Source #

A small utility type that represents a syntactic-hashed thing.

The Eq and Ord instances only compares syntactic hashes.

Constructors

Synhashed 

Fields

Instances

Instances details
Functor Synhashed Source # 
Instance details

Defined in Unison.Merge.Synhashed

Methods

fmap :: (a -> b) -> Synhashed a -> Synhashed b #

(<$) :: a -> Synhashed b -> Synhashed a #

Generic (Synhashed a) Source # 
Instance details

Defined in Unison.Merge.Synhashed

Associated Types

type Rep (Synhashed a) :: Type -> Type #

Methods

from :: Synhashed a -> Rep (Synhashed a) x #

to :: Rep (Synhashed a) x -> Synhashed a #

Show a => Show (Synhashed a) Source # 
Instance details

Defined in Unison.Merge.Synhashed

Eq (Synhashed a) Source # 
Instance details

Defined in Unison.Merge.Synhashed

Methods

(==) :: Synhashed a -> Synhashed a -> Bool #

(/=) :: Synhashed a -> Synhashed a -> Bool #

Ord (Synhashed a) Source # 
Instance details

Defined in Unison.Merge.Synhashed

type Rep (Synhashed a) Source # 
Instance details

Defined in Unison.Merge.Synhashed

type Rep (Synhashed a) = D1 ('MetaData "Synhashed" "Unison.Merge.Synhashed" "unison-merge-0.0.0-diTL8yeB4h1dlJ26c7Frh" 'False) (C1 ('MetaCons "Synhashed" 'PrefixI 'True) (S1 ('MetaSel ('Just "hash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Hash) :*: S1 ('MetaSel ('Just "value") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))

data ThreeWay a Source #

Constructors

ThreeWay 

Fields

Instances

Instances details
Foldable ThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

fold :: Monoid m => ThreeWay m -> m #

foldMap :: Monoid m => (a -> m) -> ThreeWay a -> m #

foldMap' :: Monoid m => (a -> m) -> ThreeWay a -> m #

foldr :: (a -> b -> b) -> b -> ThreeWay a -> b #

foldr' :: (a -> b -> b) -> b -> ThreeWay a -> b #

foldl :: (b -> a -> b) -> b -> ThreeWay a -> b #

foldl' :: (b -> a -> b) -> b -> ThreeWay a -> b #

foldr1 :: (a -> a -> a) -> ThreeWay a -> a #

foldl1 :: (a -> a -> a) -> ThreeWay a -> a #

toList :: ThreeWay a -> [a] #

null :: ThreeWay a -> Bool #

length :: ThreeWay a -> Int #

elem :: Eq a => a -> ThreeWay a -> Bool #

maximum :: Ord a => ThreeWay a -> a #

minimum :: Ord a => ThreeWay a -> a #

sum :: Num a => ThreeWay a -> a #

product :: Num a => ThreeWay a -> a #

Traversable ThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

traverse :: Applicative f => (a -> f b) -> ThreeWay a -> f (ThreeWay b) #

sequenceA :: Applicative f => ThreeWay (f a) -> f (ThreeWay a) #

mapM :: Monad m => (a -> m b) -> ThreeWay a -> m (ThreeWay b) #

sequence :: Monad m => ThreeWay (m a) -> m (ThreeWay a) #

Applicative ThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

pure :: a -> ThreeWay a #

(<*>) :: ThreeWay (a -> b) -> ThreeWay a -> ThreeWay b #

liftA2 :: (a -> b -> c) -> ThreeWay a -> ThreeWay b -> ThreeWay c #

(*>) :: ThreeWay a -> ThreeWay b -> ThreeWay b #

(<*) :: ThreeWay a -> ThreeWay b -> ThreeWay a #

Functor ThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

fmap :: (a -> b) -> ThreeWay a -> ThreeWay b #

(<$) :: a -> ThreeWay b -> ThreeWay a #

Semialign ThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

align :: ThreeWay a -> ThreeWay b -> ThreeWay (These a b) #

alignWith :: (These a b -> c) -> ThreeWay a -> ThreeWay b -> ThreeWay c #

Unzip ThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

unzipWith :: (c -> (a, b)) -> ThreeWay c -> (ThreeWay a, ThreeWay b) #

unzip :: ThreeWay (a, b) -> (ThreeWay a, ThreeWay b) #

Zip ThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

zip :: ThreeWay a -> ThreeWay b -> ThreeWay (a, b) #

zipWith :: (a -> b -> c) -> ThreeWay a -> ThreeWay b -> ThreeWay c #

Generic (ThreeWay a) Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Associated Types

type Rep (ThreeWay a) :: Type -> Type #

Methods

from :: ThreeWay a -> Rep (ThreeWay a) x #

to :: Rep (ThreeWay a) x -> ThreeWay a #

type Rep (ThreeWay a) Source # 
Instance details

Defined in Unison.Merge.Internal.Types

type Rep (ThreeWay a) = D1 ('MetaData "ThreeWay" "Unison.Merge.Internal.Types" "unison-merge-0.0.0-diTL8yeB4h1dlJ26c7Frh" 'False) (C1 ('MetaCons "ThreeWay" 'PrefixI 'True) (S1 ('MetaSel ('Just "lca") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: (S1 ('MetaSel ('Just "alice") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Just "bob") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))

data TwoOrThreeWay a Source #

Constructors

TwoOrThreeWay 

Fields

Instances

Instances details
Foldable TwoOrThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

fold :: Monoid m => TwoOrThreeWay m -> m #

foldMap :: Monoid m => (a -> m) -> TwoOrThreeWay a -> m #

foldMap' :: Monoid m => (a -> m) -> TwoOrThreeWay a -> m #

foldr :: (a -> b -> b) -> b -> TwoOrThreeWay a -> b #

foldr' :: (a -> b -> b) -> b -> TwoOrThreeWay a -> b #

foldl :: (b -> a -> b) -> b -> TwoOrThreeWay a -> b #

foldl' :: (b -> a -> b) -> b -> TwoOrThreeWay a -> b #

foldr1 :: (a -> a -> a) -> TwoOrThreeWay a -> a #

foldl1 :: (a -> a -> a) -> TwoOrThreeWay a -> a #

toList :: TwoOrThreeWay a -> [a] #

null :: TwoOrThreeWay a -> Bool #

length :: TwoOrThreeWay a -> Int #

elem :: Eq a => a -> TwoOrThreeWay a -> Bool #

maximum :: Ord a => TwoOrThreeWay a -> a #

minimum :: Ord a => TwoOrThreeWay a -> a #

sum :: Num a => TwoOrThreeWay a -> a #

product :: Num a => TwoOrThreeWay a -> a #

Traversable TwoOrThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

traverse :: Applicative f => (a -> f b) -> TwoOrThreeWay a -> f (TwoOrThreeWay b) #

sequenceA :: Applicative f => TwoOrThreeWay (f a) -> f (TwoOrThreeWay a) #

mapM :: Monad m => (a -> m b) -> TwoOrThreeWay a -> m (TwoOrThreeWay b) #

sequence :: Monad m => TwoOrThreeWay (m a) -> m (TwoOrThreeWay a) #

Applicative TwoOrThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Functor TwoOrThreeWay Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Methods

fmap :: (a -> b) -> TwoOrThreeWay a -> TwoOrThreeWay b #

(<$) :: a -> TwoOrThreeWay b -> TwoOrThreeWay a #

Generic (TwoOrThreeWay a) Source # 
Instance details

Defined in Unison.Merge.Internal.Types

Associated Types

type Rep (TwoOrThreeWay a) :: Type -> Type #

type Rep (TwoOrThreeWay a) Source # 
Instance details

Defined in Unison.Merge.Internal.Types

type Rep (TwoOrThreeWay a) = D1 ('MetaData "TwoOrThreeWay" "Unison.Merge.Internal.Types" "unison-merge-0.0.0-diTL8yeB4h1dlJ26c7Frh" 'False) (C1 ('MetaCons "TwoOrThreeWay" 'PrefixI 'True) (S1 ('MetaSel ('Just "lca") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe a)) :*: (S1 ('MetaSel ('Just "alice") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Just "bob") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))))

data TwoWay a Source #

Constructors

TwoWay 

Fields

Instances

Instances details
Foldable TwoWay Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

fold :: Monoid m => TwoWay m -> m #

foldMap :: Monoid m => (a -> m) -> TwoWay a -> m #

foldMap' :: Monoid m => (a -> m) -> TwoWay a -> m #

foldr :: (a -> b -> b) -> b -> TwoWay a -> b #

foldr' :: (a -> b -> b) -> b -> TwoWay a -> b #

foldl :: (b -> a -> b) -> b -> TwoWay a -> b #

foldl' :: (b -> a -> b) -> b -> TwoWay a -> b #

foldr1 :: (a -> a -> a) -> TwoWay a -> a #

foldl1 :: (a -> a -> a) -> TwoWay a -> a #

toList :: TwoWay a -> [a] #

null :: TwoWay a -> Bool #

length :: TwoWay a -> Int #

elem :: Eq a => a -> TwoWay a -> Bool #

maximum :: Ord a => TwoWay a -> a #

minimum :: Ord a => TwoWay a -> a #

sum :: Num a => TwoWay a -> a #

product :: Num a => TwoWay a -> a #

Traversable TwoWay Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

traverse :: Applicative f => (a -> f b) -> TwoWay a -> f (TwoWay b) #

sequenceA :: Applicative f => TwoWay (f a) -> f (TwoWay a) #

mapM :: Monad m => (a -> m b) -> TwoWay a -> m (TwoWay b) #

sequence :: Monad m => TwoWay (m a) -> m (TwoWay a) #

Applicative TwoWay Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

pure :: a -> TwoWay a #

(<*>) :: TwoWay (a -> b) -> TwoWay a -> TwoWay b #

liftA2 :: (a -> b -> c) -> TwoWay a -> TwoWay b -> TwoWay c #

(*>) :: TwoWay a -> TwoWay b -> TwoWay b #

(<*) :: TwoWay a -> TwoWay b -> TwoWay a #

Functor TwoWay Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

fmap :: (a -> b) -> TwoWay a -> TwoWay b #

(<$) :: a -> TwoWay b -> TwoWay a #

Semialign TwoWay Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

align :: TwoWay a -> TwoWay b -> TwoWay (These a b) #

alignWith :: (These a b -> c) -> TwoWay a -> TwoWay b -> TwoWay c #

Unzip TwoWay Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

unzipWith :: (c -> (a, b)) -> TwoWay c -> (TwoWay a, TwoWay b) #

unzip :: TwoWay (a, b) -> (TwoWay a, TwoWay b) #

Zip TwoWay Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

zip :: TwoWay a -> TwoWay b -> TwoWay (a, b) #

zipWith :: (a -> b -> c) -> TwoWay a -> TwoWay b -> TwoWay c #

Monoid a => Monoid (TwoWay a) Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

mempty :: TwoWay a #

mappend :: TwoWay a -> TwoWay a -> TwoWay a #

mconcat :: [TwoWay a] -> TwoWay a #

Semigroup a => Semigroup (TwoWay a) Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

(<>) :: TwoWay a -> TwoWay a -> TwoWay a #

sconcat :: NonEmpty (TwoWay a) -> TwoWay a #

stimes :: Integral b => b -> TwoWay a -> TwoWay a #

Generic (TwoWay a) Source # 
Instance details

Defined in Unison.Merge.TwoWay

Associated Types

type Rep (TwoWay a) :: Type -> Type #

Methods

from :: TwoWay a -> Rep (TwoWay a) x #

to :: Rep (TwoWay a) x -> TwoWay a #

Show a => Show (TwoWay a) Source # 
Instance details

Defined in Unison.Merge.TwoWay

Methods

showsPrec :: Int -> TwoWay a -> ShowS #

show :: TwoWay a -> String #

showList :: [TwoWay a] -> ShowS #

type Rep (TwoWay a) Source # 
Instance details

Defined in Unison.Merge.TwoWay

type Rep (TwoWay a) = D1 ('MetaData "TwoWay" "Unison.Merge.TwoWay" "unison-merge-0.0.0-diTL8yeB4h1dlJ26c7Frh" 'False) (C1 ('MetaCons "TwoWay" 'PrefixI 'True) (S1 ('MetaSel ('Just "alice") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Just "bob") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

data TwoWayI a Source #

"Two-way inclusive".

Constructors

TwoWayI 

Fields

Instances

Instances details
Foldable TwoWayI Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Methods

fold :: Monoid m => TwoWayI m -> m #

foldMap :: Monoid m => (a -> m) -> TwoWayI a -> m #

foldMap' :: Monoid m => (a -> m) -> TwoWayI a -> m #

foldr :: (a -> b -> b) -> b -> TwoWayI a -> b #

foldr' :: (a -> b -> b) -> b -> TwoWayI a -> b #

foldl :: (b -> a -> b) -> b -> TwoWayI a -> b #

foldl' :: (b -> a -> b) -> b -> TwoWayI a -> b #

foldr1 :: (a -> a -> a) -> TwoWayI a -> a #

foldl1 :: (a -> a -> a) -> TwoWayI a -> a #

toList :: TwoWayI a -> [a] #

null :: TwoWayI a -> Bool #

length :: TwoWayI a -> Int #

elem :: Eq a => a -> TwoWayI a -> Bool #

maximum :: Ord a => TwoWayI a -> a #

minimum :: Ord a => TwoWayI a -> a #

sum :: Num a => TwoWayI a -> a #

product :: Num a => TwoWayI a -> a #

Applicative TwoWayI Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Methods

pure :: a -> TwoWayI a #

(<*>) :: TwoWayI (a -> b) -> TwoWayI a -> TwoWayI b #

liftA2 :: (a -> b -> c) -> TwoWayI a -> TwoWayI b -> TwoWayI c #

(*>) :: TwoWayI a -> TwoWayI b -> TwoWayI b #

(<*) :: TwoWayI a -> TwoWayI b -> TwoWayI a #

Functor TwoWayI Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Methods

fmap :: (a -> b) -> TwoWayI a -> TwoWayI b #

(<$) :: a -> TwoWayI b -> TwoWayI a #

Semialign TwoWayI Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Methods

align :: TwoWayI a -> TwoWayI b -> TwoWayI (These a b) #

alignWith :: (These a b -> c) -> TwoWayI a -> TwoWayI b -> TwoWayI c #

Zip TwoWayI Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Methods

zip :: TwoWayI a -> TwoWayI b -> TwoWayI (a, b) #

zipWith :: (a -> b -> c) -> TwoWayI a -> TwoWayI b -> TwoWayI c #

Monoid a => Monoid (TwoWayI a) Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Methods

mempty :: TwoWayI a #

mappend :: TwoWayI a -> TwoWayI a -> TwoWayI a #

mconcat :: [TwoWayI a] -> TwoWayI a #

Semigroup a => Semigroup (TwoWayI a) Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Methods

(<>) :: TwoWayI a -> TwoWayI a -> TwoWayI a #

sconcat :: NonEmpty (TwoWayI a) -> TwoWayI a #

stimes :: Integral b => b -> TwoWayI a -> TwoWayI a #

Generic (TwoWayI a) Source # 
Instance details

Defined in Unison.Merge.TwoWayI

Associated Types

type Rep (TwoWayI a) :: Type -> Type #

Methods

from :: TwoWayI a -> Rep (TwoWayI a) x #

to :: Rep (TwoWayI a) x -> TwoWayI a #

type Rep (TwoWayI a) Source # 
Instance details

Defined in Unison.Merge.TwoWayI

type Rep (TwoWayI a) = D1 ('MetaData "TwoWayI" "Unison.Merge.TwoWayI" "unison-merge-0.0.0-diTL8yeB4h1dlJ26c7Frh" 'False) (C1 ('MetaCons "TwoWayI" 'PrefixI 'True) (S1 ('MetaSel ('Just "alice") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Just "bob") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Just "both") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))))

data Unconflicts v Source #

Constructors

Unconflicts 

Fields

Instances

Instances details
Foldable Unconflicts Source # 
Instance details

Defined in Unison.Merge.Unconflicts

Methods

fold :: Monoid m => Unconflicts m -> m #

foldMap :: Monoid m => (a -> m) -> Unconflicts a -> m #

foldMap' :: Monoid m => (a -> m) -> Unconflicts a -> m #

foldr :: (a -> b -> b) -> b -> Unconflicts a -> b #

foldr' :: (a -> b -> b) -> b -> Unconflicts a -> b #

foldl :: (b -> a -> b) -> b -> Unconflicts a -> b #

foldl' :: (b -> a -> b) -> b -> Unconflicts a -> b #

foldr1 :: (a -> a -> a) -> Unconflicts a -> a #

foldl1 :: (a -> a -> a) -> Unconflicts a -> a #

toList :: Unconflicts a -> [a] #

null :: Unconflicts a -> Bool #

length :: Unconflicts a -> Int #

elem :: Eq a => a -> Unconflicts a -> Bool #

maximum :: Ord a => Unconflicts a -> a #

minimum :: Ord a => Unconflicts a -> a #

sum :: Num a => Unconflicts a -> a #

product :: Num a => Unconflicts a -> a #

Functor Unconflicts Source # 
Instance details

Defined in Unison.Merge.Unconflicts

Methods

fmap :: (a -> b) -> Unconflicts a -> Unconflicts b #

(<$) :: a -> Unconflicts b -> Unconflicts a #

Generic (Unconflicts v) Source # 
Instance details

Defined in Unison.Merge.Unconflicts

Associated Types

type Rep (Unconflicts v) :: Type -> Type #

Methods

from :: Unconflicts v -> Rep (Unconflicts v) x #

to :: Rep (Unconflicts v) x -> Unconflicts v #

type Rep (Unconflicts v) Source # 
Instance details

Defined in Unison.Merge.Unconflicts

type Rep (Unconflicts v) = D1 ('MetaData "Unconflicts" "Unison.Merge.Unconflicts" "unison-merge-0.0.0-diTL8yeB4h1dlJ26c7Frh" 'False) (C1 ('MetaCons "Unconflicts" 'PrefixI 'True) (S1 ('MetaSel ('Just "adds") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TwoWayI (Map Name v))) :*: (S1 ('MetaSel ('Just "deletes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TwoWayI (Map Name v))) :*: S1 ('MetaSel ('Just "updates") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TwoWayI (Map Name v))))))

data Updated a Source #

An updated thing.

Constructors

Updated 

Fields

Instances

Instances details
Foldable Updated Source # 
Instance details

Defined in Unison.Merge.Updated

Methods

fold :: Monoid m => Updated m -> m #

foldMap :: Monoid m => (a -> m) -> Updated a -> m #

foldMap' :: Monoid m => (a -> m) -> Updated a -> m #

foldr :: (a -> b -> b) -> b -> Updated a -> b #

foldr' :: (a -> b -> b) -> b -> Updated a -> b #

foldl :: (b -> a -> b) -> b -> Updated a -> b #

foldl' :: (b -> a -> b) -> b -> Updated a -> b #

foldr1 :: (a -> a -> a) -> Updated a -> a #

foldl1 :: (a -> a -> a) -> Updated a -> a #

toList :: Updated a -> [a] #

null :: Updated a -> Bool #

length :: Updated a -> Int #

elem :: Eq a => a -> Updated a -> Bool #

maximum :: Ord a => Updated a -> a #

minimum :: Ord a => Updated a -> a #

sum :: Num a => Updated a -> a #

product :: Num a => Updated a -> a #

Traversable Updated Source # 
Instance details

Defined in Unison.Merge.Updated

Methods

traverse :: Applicative f => (a -> f b) -> Updated a -> f (Updated b) #

sequenceA :: Applicative f => Updated (f a) -> f (Updated a) #

mapM :: Monad m => (a -> m b) -> Updated a -> m (Updated b) #

sequence :: Monad m => Updated (m a) -> m (Updated a) #

Functor Updated Source # 
Instance details

Defined in Unison.Merge.Updated

Methods

fmap :: (a -> b) -> Updated a -> Updated b #

(<$) :: a -> Updated b -> Updated a #

Generic (Updated a) Source # 
Instance details

Defined in Unison.Merge.Updated

Associated Types

type Rep (Updated a) :: Type -> Type #

Methods

from :: Updated a -> Rep (Updated a) x #

to :: Rep (Updated a) x -> Updated a #

Show a => Show (Updated a) Source # 
Instance details

Defined in Unison.Merge.Updated

Methods

showsPrec :: Int -> Updated a -> ShowS #

show :: Updated a -> String #

showList :: [Updated a] -> ShowS #

type Rep (Updated a) Source # 
Instance details

Defined in Unison.Merge.Updated

type Rep (Updated a) = D1 ('MetaData "Updated" "Unison.Merge.Updated" "unison-merge-0.0.0-diTL8yeB4h1dlJ26c7Frh" 'False) (C1 ('MetaCons "Updated" 'PrefixI 'True) (S1 ('MetaSel ('Just "old") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Just "new") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))