syntax-tree-0.1.0.1: Typed ASTs
AST.Knot.Prune
data Prune k Source #
Constructors
Defined in AST.Knot.Prune
Associated Types
type KNodesConstraint Prune c :: Constraint Source #
data KWitness Prune a :: Type Source #
Methods
kLiftConstraint :: KNodesConstraint Prune c => KWitness Prune n -> Proxy c -> (c n -> r) -> r Source #
pureK :: (forall (n :: Knot -> Type). KWitness Prune n -> Tree p n) -> Tree Prune p Source #
mapK :: (forall (n :: Knot -> Type). KWitness Prune n -> Tree p n -> Tree q n) -> Tree Prune p -> Tree Prune q Source #
zipK :: Tree Prune p -> Tree Prune q -> Tree Prune (Product p q) Source #
foldMapK :: Monoid a => (forall (n :: Knot -> Type). KWitness Prune n -> Tree p n -> a) -> Tree Prune p -> a Source #
sequenceK :: Applicative f => Tree Prune (ContainedK f p) -> f (Tree Prune p) Source #
zipMatch :: Tree Prune p -> Tree Prune q -> Maybe (Tree Prune (Product p q)) Source #
recursiveKTraversable :: Proxy Prune -> Dict (KNodesConstraint Prune RTraversable)
recursiveKNodes :: Proxy Prune -> Dict (KNodesConstraint Prune RNodes)
recursively :: Proxy (c Prune) -> Dict (c Prune, KNodesConstraint Prune (Recursively c)) Source #
inferBody :: Tree (Compose Prune t) (InferChild m k) -> m (Tree (Compose Prune t) k, Tree (InferOf (Compose Prune t)) (UVarOf m)) Source #
inferContext :: Proxy m -> Proxy (Compose Prune t) -> Dict (KNodesConstraint (Compose Prune t) (Infer m), KNodesConstraint (InferOf (Compose Prune t)) (Unify m)) Source #
(==) :: Prune k -> Prune k -> Bool #
(/=) :: Prune k -> Prune k -> Bool #
compare :: Prune k -> Prune k -> Ordering #
(<) :: Prune k -> Prune k -> Bool #
(<=) :: Prune k -> Prune k -> Bool #
(>) :: Prune k -> Prune k -> Bool #
(>=) :: Prune k -> Prune k -> Bool #
max :: Prune k -> Prune k -> Prune k #
min :: Prune k -> Prune k -> Prune k #
showsPrec :: Int -> Prune k -> ShowS #
show :: Prune k -> String #
showList :: [Prune k] -> ShowS #
type Rep (Prune k) :: Type -> Type #
from :: Prune k -> Rep (Prune k) x #
to :: Rep (Prune k) x -> Prune k #
put :: Prune k -> Put #
get :: Get (Prune k) #
putList :: [Prune k] -> Put #
rnf :: Prune k -> () #