fun matchLinkLabel()

in src/commonMain/kotlin/org/intellij/markdown/parser/markerblocks/providers/LinkReferenceDefinitionProvider.kt [174:204]


        fun matchLinkLabel(text: CharSequence, start: Int): IntRange? {
            var offset = start
            if (offset >= text.length || text[offset] != '[') {
                return null
            }
            offset++

            var seenNonWhitespace = false

            for (i in 1..999) {
                if (offset >= text.length)
                    return null
                var c = text[offset]
                if (c == '[' || c == ']')
                    break
                if (c == '\\') {
                    offset++
                    if (offset >= text.length)
                        return null
                    c = text[offset]
                }
                if (!c.isWhitespace()) {
                    seenNonWhitespace = true
                }
                offset++
            }
            if (!seenNonWhitespace || offset >= text.length || text[offset] != ']') {
                return null
            }
            return start..offset
        }