override fun parse()

in src/commonMain/kotlin/org/intellij/markdown/parser/sequentialparsers/impl/AutolinkParser.kt [12:33]


    override fun parse(tokens: TokensCache, rangesToGlue: List<IntRange>): SequentialParser.ParsingResult {
        val result = SequentialParser.ParsingResultBuilder()
        val delegateIndices = RangesListBuilder()
        var iterator = tokens.RangesListIterator(rangesToGlue)

        while (iterator.type != null) {
            if (iterator.type == MarkdownTokenTypes.LT && iterator.rawLookup(1).let { it != null && it in typesAfterLT }) {
                val start = iterator.index
                while (iterator.type != MarkdownTokenTypes.GT && iterator.type != null) {
                    iterator = iterator.advance()
                }
                if (iterator.type == MarkdownTokenTypes.GT) {
                    result.withNode(SequentialParser.Node(start..iterator.index + 1, MarkdownElementTypes.AUTOLINK))
                }
            } else {
                delegateIndices.put(iterator.index)
            }
            iterator = iterator.advance()
        }

        return result.withFurtherProcessing(delegateIndices.get())
    }