hdiff-0.0.1: Pattern-Expression-based differencing of arbitrary types.

Safe HaskellNone
LanguageHaskell2010

Languages.RTree

Documentation

data RTree Source #

Constructors

String :>: [RTree] 
Instances
Eq RTree Source # 
Instance details

Defined in Languages.RTree

Methods

(==) :: RTree -> RTree -> Bool #

(/=) :: RTree -> RTree -> Bool #

Show RTree Source # 
Instance details

Defined in Languages.RTree

Methods

showsPrec :: Int -> RTree -> ShowS #

show :: RTree -> String #

showList :: [RTree] -> ShowS #

Arbitrary RTree Source # 
Instance details

Defined in Languages.RTree

Methods

arbitrary :: Gen RTree #

shrink :: RTree -> [RTree] #

HasDatatypeInfo W FamRTree CodesRTree Source # 
Instance details

Defined in Languages.RTree

Family W FamRTree CodesRTree Source # 
Instance details

Defined in Languages.RTree

Methods

sfrom' :: SNat ix -> El FamRTree ix -> Rep W (El FamRTree) (Lkup ix CodesRTree) #

sto' :: SNat ix -> Rep W (El FamRTree) (Lkup ix CodesRTree) -> El FamRTree ix #

data WKon Source #

Constructors

WString 
Instances
TestEquality W Source # 
Instance details

Defined in Languages.RTree

Methods

testEquality :: W a -> W b -> Maybe (a :~: b) #

DigestibleHO W Source # 
Instance details

Defined in Languages.RTree

Methods

digestHO :: W ki -> Digest Source #

RendererHO W Source # 
Instance details

Defined in Languages.RTree

Methods

renderHO :: W x -> Doc ann Source #

HasDatatypeInfo W FamRTree CodesRTree Source # 
Instance details

Defined in Languages.RTree

Family W FamRTree CodesRTree Source # 
Instance details

Defined in Languages.RTree

Methods

sfrom' :: SNat ix -> El FamRTree ix -> Rep W (El FamRTree) (Lkup ix CodesRTree) #

sto' :: SNat ix -> Rep W (El FamRTree) (Lkup ix CodesRTree) -> El FamRTree ix #

data W :: WKon -> * where Source #

Constructors

W_String :: String -> W WString 
Instances
TestEquality W Source # 
Instance details

Defined in Languages.RTree

Methods

testEquality :: W a -> W b -> Maybe (a :~: b) #

DigestibleHO W Source # 
Instance details

Defined in Languages.RTree

Methods

digestHO :: W ki -> Digest Source #

RendererHO W Source # 
Instance details

Defined in Languages.RTree

Methods

renderHO :: W x -> Doc ann Source #

HasDatatypeInfo W FamRTree CodesRTree Source # 
Instance details

Defined in Languages.RTree

Family W FamRTree CodesRTree Source # 
Instance details

Defined in Languages.RTree

Methods

sfrom' :: SNat ix -> El FamRTree ix -> Rep W (El FamRTree) (Lkup ix CodesRTree) #

sto' :: SNat ix -> Rep W (El FamRTree) (Lkup ix CodesRTree) -> El FamRTree ix #

Eq (W x) Source # 
Instance details

Defined in Languages.RTree

Methods

(==) :: W x -> W x -> Bool #

(/=) :: W x -> W x -> Bool #

Show (W x) Source # 
Instance details

Defined in Languages.RTree

Methods

showsPrec :: Int -> W x -> ShowS #

show :: W x -> String #

showList :: [W x] -> ShowS #

type FamRTree = '[RTree, [RTree]] Source #

type CodesRTree = '['['[K WString, I (S Z)]], '['[], '[I Z, I (S Z)]]] Source #

pattern ListRTree_Ifx1 :: phi Z -> phi (S Z) -> View kon phi (Lkup (S Z) CodesRTree) Source #

pattern ListRTree_Ifx0 :: View kon phi (Lkup (S Z) CodesRTree) Source #

pattern RTree_Ifx0 :: kon WString -> phi (S Z) -> View kon phi (Lkup Z CodesRTree) Source #

pattern IdxListRTree :: forall (a :: Nat). () => forall (n :: Nat). (a ~# S n, n ~# Z) => SNat a Source #

pattern IdxRTree :: forall (a :: Nat). () => a ~# Z => SNat a Source #

insertAt :: Int -> a -> [a] -> [a] Source #