Diagrams.Trail

# Type definitions

## Lines and loops

data Trail' l v n

glueLine

closeLine

cutLoop

## Generic trails

data Trail v n

_Line

_Loop

_LocLine

_LocLoop

wrapTrail

wrapLine

wrapLoop

onTrail

onLine

glueTrail

closeTrail

cutTrail

# Constructing trails

emptyLine

emptyTrail

lineFromVertices

trailFromVertices

lineFromOffsets

trailFromOffsets

lineFromSegments

trailFromSegments

loopFromSegments

# Eliminating trails

withTrail'

withTrail

withLine

isLineEmpty

isTrailEmpty

isLine

isLoop

trailSegments

lineSegments

loopSegments

onLineSegments

trailOffsets

trailOffset

lineOffsets

lineOffset

loopOffsets

trailPoints

linePoints

loopPoints

trailVertices'

lineVertices'

loopVertices'

trailVertices

lineVertices

loopVertices

trailLocSegments

fixTrail

unfixTrail

# Modifying trails

reverseTrail

reverseLocTrail

reverseLine

reverseLocLine

reverseLoop

reverseLocLoop

# Internals

## Type tags

data Line

data Loop

## Segment trees

data SegTree v n

trailMeasure

numSegs

offset

## Extracting segments

data GetSegment t

getSegment

data GetSegmentCodomain v n