DataTreeView-0.1.1: A GTK widget for displaying arbitrary Data.Data.Data instances

Safe HaskellSafe-Infered

DataTreeView.StrictTypes

Contents

Description

Remark: the heavy use of strictness here is for correctly catching exceptions, not for performance reasons

Synopsis

Documentation

module Data.Tree

Strict lists

data StrictList a Source

Strict lists (in both the head and tail)

Note: Most operations for this type are provided via the ListLike instance, but ListLike is not reexported here.

Construction

class ToStrictList x a whereSource

Methods

strictList :: x -> StrictList aSource

Instances

ToStrictList a a

Singleton

ToStrictList [a] a

From lazy list

ToStrictList (StrictList a) a

Identity

ToStrictList x a => ToStrictList (a, x) a

Cons

Destruction

Strict trees and forests

Construction

class ToStrictTree x a whereSource

Methods

strictTree :: x -> StrictTree aSource

Instances

ToStrictTree a a

Leaf

ToStrictTree (Tree a) a

From lazy tree

ToStrictTree (StrictTree a) a

Identity

ToStrictForest y a => ToStrictTree (a, y) a

From node value and subforest

class ToStrictForest y a whereSource

Modification

modifyValue :: StrictTree a -> (a -> a) -> StrictTree aSource

Note: this function is not recursive.

modifyChildren :: StrictTree a -> (StrictForest a -> StrictForest a) -> StrictTree aSource

Note: this function is not recursive.

Destruction