Skip to content

Incorrect behaviour on Text-blocks preceded by returnΒ #1258

@mohitsatr

Description

@mohitsatr

https://google.github.io/styleguide/javaguide.html#s4.8.9-text-blocks

The opening """ of a text block is always on a new line. That line may either follow the same indentation rules as other constructs, or it may have no indentation at all (so it starts at the left margin). The closing """ is on a new line with the same indentation as the opening """, and may be followed on the same line by further code

Original code:

$ cat TextBlocks.java
/** some javadoc.  */
public class TextBlocks {

  /** some javadoc. */
  public static String textFun(String[] args) {
                                
    final String simpleScript = """
        s
        """;

    final String simpleScript1 = 
        """
        this is simple test;
        """;

    final String simpleScript2 = 
        """
        this is sample text """; 
        
    return """
        this is sample text 
        """;
  }
}

Output by the formatter:

$ java -jar testing/google-java-format-1.27.0-all-deps.jar TextBlocks.java 
/** some javadoc. */
public class TextBlocks {

  /** some javadoc. */
  public static String textFun(String[] args) {
    final String simpleScript =
        """          // CORRECT BEHAVIOUR
        s
        """;

    final String simpleScript1 =
        """
        this is simple test;
        """;

    final String simpleScript2 =
        """
        this is sample text\
        """;         // CORRECT BEHAVIOUR

    return """       // INCORRECT BEHAVIOUR
    this is sample text
    """;
  }
}

I expected the opening quotations of the text-block after return to be on new line.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions