Preserve comment for last arg of ObjectMethod (#1216)

* Preserve comment after last arg of ObjectMethod

* Preserve comment after last arg with default value
master
Brian Ng 2017-04-12 18:32:04 -05:00 committed by Christopher Chedeau
parent ea957ed64a
commit 3a7559be58
3 changed files with 61 additions and 1 deletions

View File

@ -567,11 +567,13 @@ function handleLastFunctionArgComments(
// Real functions
if (
precedingNode &&
precedingNode.type === "Identifier" &&
(precedingNode.type === "Identifier" ||
precedingNode.type === "AssignmentPattern") &&
enclosingNode &&
(enclosingNode.type === "ArrowFunctionExpression" ||
enclosingNode.type === "FunctionExpression" ||
enclosingNode.type === "FunctionDeclaration" ||
enclosingNode.type === "ObjectMethod" ||
enclosingNode.type === "ClassMethod") &&
getNextNonSpaceNonCommentCharacter(text, comment) === ")"
) {

View File

@ -692,6 +692,26 @@ function f(
): number {
return a + 1;
}
var x = {
getSectionMode(
pageMetaData: PageMetaData,
sectionMetaData: SectionMetaData
/* $FlowFixMe This error was exposed while converting keyMirror
* to keyMirrorRecursive */
): $Enum<SectionMode> {
}
}
class X {
getSectionMode(
pageMetaData: PageMetaData,
sectionMetaData: SectionMetaData = ['unknown']
/* $FlowFixMe This error was exposed while converting keyMirror
* to keyMirrorRecursive */
): $Enum<SectionMode> {
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
type f = (
currentRequest: { a: number }
@ -727,6 +747,24 @@ function f(
return a + 1;
}
var x = {
getSectionMode(
pageMetaData: PageMetaData,
sectionMetaData: SectionMetaData
/* $FlowFixMe This error was exposed while converting keyMirror
* to keyMirrorRecursive */
): $Enum<SectionMode> {}
};
class X {
getSectionMode(
pageMetaData: PageMetaData,
sectionMetaData: SectionMetaData = ["unknown"]
/* $FlowFixMe This error was exposed while converting keyMirror
* to keyMirrorRecursive */
): $Enum<SectionMode> {}
}
`;
exports[`preserve-new-line-last.js 1`] = `

View File

@ -31,3 +31,23 @@ function f(
): number {
return a + 1;
}
var x = {
getSectionMode(
pageMetaData: PageMetaData,
sectionMetaData: SectionMetaData
/* $FlowFixMe This error was exposed while converting keyMirror
* to keyMirrorRecursive */
): $Enum<SectionMode> {
}
}
class X {
getSectionMode(
pageMetaData: PageMetaData,
sectionMetaData: SectionMetaData = ['unknown']
/* $FlowFixMe This error was exposed while converting keyMirror
* to keyMirrorRecursive */
): $Enum<SectionMode> {
}
}