Skip to content

Commit

Permalink
Extract static function isNoteTagOrExprChar
Browse files Browse the repository at this point in the history
  • Loading branch information
jasmith-hs committed Oct 27, 2023
1 parent 1a8d43a commit 160c254
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 15 deletions.
31 changes: 16 additions & 15 deletions src/main/java/com/hubspot/jinjava/tree/output/OutputList.java
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,7 @@ private String joinNodesWithoutAddingExpressions(
LengthLimitingStringBuilder val,
TokenScannerSymbols tokenScannerSymbols
) {
@SuppressWarnings("StringBufferReplaceableByString")
String separator = new StringBuilder()
.append('\n')
.append(tokenScannerSymbols.getPrefixChar())
.append(tokenScannerSymbols.getNoteChar())
.append(tokenScannerSymbols.getTrimChar())
.append(' ')
.append(tokenScannerSymbols.getNoteChar())
.append(tokenScannerSymbols.getExprEndChar())
.toString();
String separator = getWhitespaceSeparator(tokenScannerSymbols);
String prev = null;
String cur;
for (OutputNode node : nodes) {
Expand All @@ -93,11 +84,7 @@ private String joinNodesWithoutAddingExpressions(
) {
if (
cur.length() > 0 &&
(
cur.charAt(0) == tokenScannerSymbols.getTag() ||
cur.charAt(0) == tokenScannerSymbols.getExprStartChar() ||
cur.charAt(0) == tokenScannerSymbols.getNoteChar()
)
TokenScannerSymbols.isNoteTagOrExprChar(tokenScannerSymbols, cur.charAt(0))
) {
val.append(separator);
}
Expand All @@ -115,6 +102,20 @@ private String joinNodesWithoutAddingExpressions(
return val.toString();
}

private static String getWhitespaceSeparator(TokenScannerSymbols tokenScannerSymbols) {
@SuppressWarnings("StringBufferReplaceableByString")
String separator = new StringBuilder()
.append('\n')
.append(tokenScannerSymbols.getPrefixChar())
.append(tokenScannerSymbols.getNoteChar())
.append(tokenScannerSymbols.getTrimChar())
.append(' ')
.append(tokenScannerSymbols.getNoteChar())
.append(tokenScannerSymbols.getExprEndChar())
.toString();
return separator;
}

private String joinNodes(LengthLimitingStringBuilder val) {
for (OutputNode node : nodes) {
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,4 +122,10 @@ public String getClosingComment() {
}
return closingComment;
}

public static boolean isNoteTagOrExprChar(TokenScannerSymbols symbols, char c) {
return (
c == symbols.getNote() || c == symbols.getTag() || c == symbols.getExprStartChar()
);
}
}

0 comments on commit 160c254

Please sign in to comment.