forked from OSchip/llvm-project
clang-format: [JS] Fix spacing in dict literals.
Before: someVariable = {'a':[{}]}; After: someVariable = {'a': [{}]}; llvm-svn: 208403
This commit is contained in:
parent
eadcdbbe57
commit
8951908218
|
@ -225,8 +225,10 @@ private:
|
|||
FormatToken *Parent = Left->getPreviousNonComment();
|
||||
bool StartsObjCMethodExpr =
|
||||
Contexts.back().CanBeExpression && Left->Type != TT_LambdaLSquare &&
|
||||
(!Parent || Parent->isOneOf(tok::colon, tok::l_square, tok::l_paren,
|
||||
tok::kw_return, tok::kw_throw) ||
|
||||
CurrentToken->isNot(tok::l_brace) &&
|
||||
(!Parent ||
|
||||
Parent->isOneOf(tok::colon, tok::l_square, tok::l_paren,
|
||||
tok::kw_return, tok::kw_throw) ||
|
||||
Parent->isUnaryOperator() || Parent->Type == TT_ObjCForIn ||
|
||||
Parent->Type == TT_CastRParen ||
|
||||
getBinOpPrecedence(Parent->Tok.getKind(), true, true) > prec::Unknown);
|
||||
|
@ -1452,7 +1454,8 @@ bool TokenAnnotator::spaceRequiredBetween(const AnnotatedLine &Line,
|
|||
return Right.MatchingParen && Style.SpacesInContainerLiterals &&
|
||||
Right.MatchingParen->Type == TT_ArrayInitializerLSquare;
|
||||
if (Right.is(tok::l_square) && Right.Type != TT_ObjCMethodExpr &&
|
||||
Right.Type != TT_LambdaLSquare && Left.isNot(tok::numeric_constant))
|
||||
Right.Type != TT_LambdaLSquare && Left.isNot(tok::numeric_constant) &&
|
||||
Left.Type != TT_DictLiteral)
|
||||
return false;
|
||||
if (Left.is(tok::colon))
|
||||
return Left.Type != TT_ObjCMethodExpr;
|
||||
|
|
|
@ -85,6 +85,7 @@ TEST_F(FormatTestJS, SpacesInContainerLiterals) {
|
|||
|
||||
verifyFormat("var obj = {a: 1, b: 2, c: 3};",
|
||||
getChromiumStyle(FormatStyle::LK_JavaScript));
|
||||
verifyFormat("someVariable = {'a': [{}]};");
|
||||
}
|
||||
|
||||
TEST_F(FormatTestJS, SingleQuoteStrings) {
|
||||
|
|
Loading…
Reference in New Issue