MCPcopy Create free account
hub / github.com/OpenEndedGroup/Field2 / getLineStyles

Function getLineStyles

lib/web/CodeMirror/src/line/highlight.js:106–120  ·  view source on GitHub ↗
(cm, line, updateFrontier)

Source from the content-addressed store, hash-verified

104}
105
106export function getLineStyles(cm, line, updateFrontier) {
107 if (!line.styles || line.styles[0] != cm.state.modeGen) {
108 let context = getContextBefore(cm, lineNo(line))
109 let resetState = line.text.length > cm.options.maxHighlightLength && copyState(cm.doc.mode, context.state)
110 let result = highlightLine(cm, line, context)
111 if (resetState) context.state = resetState
112 line.stateAfter = context.save(!resetState)
113 line.styles = result.styles
114 if (result.classes) line.styleClasses = result.classes
115 else if (line.styleClasses) line.styleClasses = null
116 if (updateFrontier === cm.doc.highlightFrontier)
117 cm.doc.modeFrontier = Math.max(cm.doc.modeFrontier, ++cm.doc.highlightFrontier)
118 }
119 return line.styles
120}
121
122export function getContextBefore(cm, n, precise) {
123 let doc = cm.doc, display = cm.display

Callers 2

buildLineContentFunction · 0.90
methods.jsFile · 0.90

Calls 6

lineNoFunction · 0.90
copyStateFunction · 0.90
getContextBeforeFunction · 0.70
highlightLineFunction · 0.70
saveMethod · 0.45
maxMethod · 0.45

Tested by

no test coverage detected