1 | module Libraries.Data.Span
4 | record Span (a : Type) where
12 | map f = { property $= f }
16 | foldr c n span = c span.property n
19 | Traversable Span where
20 | traverse f (MkSpan start width prop)
21 | = MkSpan start width <$> f prop
24 | Show a => Show (Span a) where
25 | show (MkSpan start width prop)
26 | = concat {t = List} [ "[", show start, "-", show width, "]"