forked from qt-creator/qt-creator
Clang: Extract duplicate code
Change-Id: I476916f825ab475f77f918127217dfc33eb4f388 Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
This commit is contained in:
@@ -104,9 +104,7 @@ void ClangAssistProposalItem::applyContextualContent(TextEditor::TextEditorWidge
|
|||||||
}
|
}
|
||||||
} else if (ccr.completionKind() == CodeCompletion::KeywordCompletionKind) {
|
} else if (ccr.completionKind() == CodeCompletion::KeywordCompletionKind) {
|
||||||
CompletionChunksToTextConverter converter;
|
CompletionChunksToTextConverter converter;
|
||||||
converter.setAddPlaceHolderPositions(true);
|
converter.setupForKeywords();
|
||||||
converter.setAddSpaces(true);
|
|
||||||
converter.setAddExtraVerticalSpaceBetweenBraces(true);
|
|
||||||
|
|
||||||
converter.parseChunks(ccr.chunks());
|
converter.parseChunks(ccr.chunks());
|
||||||
|
|
||||||
|
@@ -96,6 +96,13 @@ void CompletionChunksToTextConverter::setPlaceHolderToEmphasize(int placeHolderN
|
|||||||
m_placeHolderPositionToEmphasize = placeHolderNumber;
|
m_placeHolderPositionToEmphasize = placeHolderNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CompletionChunksToTextConverter::setupForKeywords()
|
||||||
|
{
|
||||||
|
setAddPlaceHolderPositions(true);
|
||||||
|
setAddSpaces(true);
|
||||||
|
setAddExtraVerticalSpaceBetweenBraces(true);
|
||||||
|
}
|
||||||
|
|
||||||
const QString &CompletionChunksToTextConverter::text() const
|
const QString &CompletionChunksToTextConverter::text() const
|
||||||
{
|
{
|
||||||
return m_text;
|
return m_text;
|
||||||
|
@@ -56,6 +56,8 @@ public:
|
|||||||
void setAddOptional(bool addOptional);
|
void setAddOptional(bool addOptional);
|
||||||
void setPlaceHolderToEmphasize(int placeHolderNumber);
|
void setPlaceHolderToEmphasize(int placeHolderNumber);
|
||||||
|
|
||||||
|
void setupForKeywords();
|
||||||
|
|
||||||
const QString &text() const;
|
const QString &text() const;
|
||||||
const std::vector<int> &placeholderPositions() const;
|
const std::vector<int> &placeholderPositions() const;
|
||||||
bool hasPlaceholderPositions() const;
|
bool hasPlaceholderPositions() const;
|
||||||
|
@@ -269,7 +269,7 @@ TEST_F(CompletionChunksToTextConverter, Switch)
|
|||||||
leftBrace,
|
leftBrace,
|
||||||
verticalSpace,
|
verticalSpace,
|
||||||
rightBrace});
|
rightBrace});
|
||||||
setupConverterForKeywords();
|
converter.setupForKeywords();
|
||||||
|
|
||||||
converter.parseChunks(completionChunks);
|
converter.parseChunks(completionChunks);
|
||||||
|
|
||||||
@@ -292,7 +292,7 @@ TEST_F(CompletionChunksToTextConverter, For)
|
|||||||
statements,
|
statements,
|
||||||
verticalSpace,
|
verticalSpace,
|
||||||
rightBrace});
|
rightBrace});
|
||||||
setupConverterForKeywords();
|
converter.setupForKeywords();
|
||||||
|
|
||||||
converter.parseChunks(completionChunks);
|
converter.parseChunks(completionChunks);
|
||||||
|
|
||||||
@@ -306,7 +306,7 @@ TEST_F(CompletionChunksToTextConverter, const_cast)
|
|||||||
rightAngle,
|
rightAngle,
|
||||||
leftParen,
|
leftParen,
|
||||||
rightParen});
|
rightParen});
|
||||||
setupConverterForKeywords();
|
converter.setupForKeywords();
|
||||||
|
|
||||||
converter.parseChunks(completionChunks);
|
converter.parseChunks(completionChunks);
|
||||||
|
|
||||||
@@ -333,7 +333,7 @@ TEST_F(CompletionChunksToTextConverter, ElseIf)
|
|||||||
statements,
|
statements,
|
||||||
verticalSpace,
|
verticalSpace,
|
||||||
rightBrace});
|
rightBrace});
|
||||||
setupConverterForKeywords();
|
converter.setupForKeywords();
|
||||||
|
|
||||||
converter.parseChunks(completionChunks);
|
converter.parseChunks(completionChunks);
|
||||||
|
|
||||||
@@ -348,17 +348,11 @@ TEST_F(CompletionChunksToTextConverter, EnableIfT)
|
|||||||
optionalComma,
|
optionalComma,
|
||||||
optionalEnableIfTType,
|
optionalEnableIfTType,
|
||||||
rightAngle});
|
rightAngle});
|
||||||
setupConverterForKeywords();
|
converter.setupForKeywords();
|
||||||
|
|
||||||
converter.parseChunks(completionChunks);
|
converter.parseChunks(completionChunks);
|
||||||
|
|
||||||
ASSERT_THAT(converter.text(), QStringLiteral("enable_if_t<>"));
|
ASSERT_THAT(converter.text(), QStringLiteral("enable_if_t<>"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CompletionChunksToTextConverter::setupConverterForKeywords()
|
|
||||||
{
|
|
||||||
converter.setAddPlaceHolderPositions(true);
|
|
||||||
converter.setAddSpaces(true);
|
|
||||||
converter.setAddExtraVerticalSpaceBetweenBraces(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user