Language.Haskell.TokenUtils.TokenUtils

Creating

initTokenCacheLayout

mkTreeFromTokens

mkTreeFromSpanTokens

Module type

data Positioning

data ReversedToks a

High level functions for use by clients, at TokenCache level

putToksInCache

replaceTokenInCache

removeToksFromCache

getTokensFromCache

getTokensNoIntrosFromCache

getTokensBeforeFromCache

addTokensAfterSpanInCache

High level functions for use by clients, at LayoutTree level

Operations at LayoutTree level

updateTokensForSrcSpan

replaceTokenForSrcSpan

getSrcSpanFor

indentDeclToks

addToksAfterSrcSpan

addOffsetToSpan

reIndentToks

Working with tokens

basicTokenise

tokenise

invariant

reverseToks

unReverseToks

reversedToks

retrieveTokensInterim

getTokensForNoIntros

getTokensFor

getTokensBefore

reAlignMarked

splitOnNewLn

getIndentOffset

newLnToken

startEndLocIncComments'

forestSpanToGhcPos

nullForestSpan

nullForestPos

should be in utils

simpPosToForestSpan

showTree

showToks

Exposed for testing only

addNewSrcSpanAndToksAfter

openZipperToSpan

openZipperToSpanAdded

retrievePrevLineToks

limitPrevToks

insertSrcSpan

insertLenChangedInSrcSpan

insertVersionsInSrcSpan

removeSrcSpan

containsStart

containsMiddle

containsEnd

splitSubtree

insertNodeAfter

splitSubToks

placeToksForSpan

reAlignOneLine

calcEndGap

getTreeSpansAsList

openZipperToSpanOrig

replaceTokNoReAlign

exported for historical tests only

initTokenCache

getTreeFromCache

replaceTreeInCache

matchTokenPos