From 6ecb24cd011b4f2d29ded247d8c3a119f561279d Mon Sep 17 00:00:00 2001 From: Yaroslav Lepenkin Date: Mon, 27 Jun 2016 18:39:36 +0300 Subject: [PATCH] [formatter-core] minor, signature change --- .../formatting/AdjustFormatRangesState.kt | 24 +++++++++---------- .../psi/formatter/common/AbstractBlock.java | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/formatting/AdjustFormatRangesState.kt b/platform/lang-impl/src/com/intellij/formatting/AdjustFormatRangesState.kt index 4a9585626d78..8f06dac54a93 100644 --- a/platform/lang-impl/src/com/intellij/formatting/AdjustFormatRangesState.kt +++ b/platform/lang-impl/src/com/intellij/formatting/AdjustFormatRangesState.kt @@ -56,23 +56,23 @@ interface BlockProcessor { } class AdditionalRangesExtractor : BlockProcessor { + val extraRanges = mutableListOf() - val additionalRanges = mutableListOf() - - override fun processLeafBlock(block: Block) { - extractAdditionalRange(block) - } + override fun processLeafBlock(block: Block) = Unit override fun processCompositeBlock(block: Block) { - extractAdditionalRange(block) - } - - private fun extractAdditionalRange(block: Block) { if (block is AbstractBlock) { - block.extraRangeToReformat?.let { additionalRanges.add(it) } + block.extraRangesToFormat?.let { extraRanges.add(it) } } } - +} + +class ExtraReformatRanges(val ranges: List = emptyList()) { + constructor(range: TextRange): this(listOf(range)) +} + +fun FormatTextRanges.mergeWith(extraRanges: ExtraReformatRanges) { + extraRanges.ranges.forEach { add(it, false) } } @@ -84,7 +84,7 @@ class AdjustFormatRangesState(var currentRoot: Block, init { setOnDone({ - extractor.additionalRanges.forEach { formatRanges.add(it, true) } + extractor.extraRanges.forEach { formatRanges.mergeWith(it) } }) } diff --git a/platform/lang-impl/src/com/intellij/psi/formatter/common/AbstractBlock.java b/platform/lang-impl/src/com/intellij/psi/formatter/common/AbstractBlock.java index 9277d6d8fcf4..e54aa509453f 100644 --- a/platform/lang-impl/src/com/intellij/psi/formatter/common/AbstractBlock.java +++ b/platform/lang-impl/src/com/intellij/psi/formatter/common/AbstractBlock.java @@ -183,7 +183,7 @@ public abstract class AbstractBlock implements ASTBlock { * @return additional range to reformat, when this block if formatted */ @Nullable - public TextRange getExtraRangeToReformat() { + public ExtraReformatRanges getExtraRangesToFormat() { return null; }