.between(CHANNEL, LT).spaceIf(false) .between(CHANNEL_TYPE, IDENTIFIER).spaceIf(true) .beforeInside(COLON, FIELD_BINDING_PATTERN).spaceIf(false) .afterInside(COLON, FIELD_BINDING_PATTERN).spaceIf(true) .between(LEFT_BRACE, REST_BINDING_PATTERN).spaceIf(true) .between(REST_BINDING_PATTERN, RIGHT_BRACE).spaceIf(true) .betweenInside(ELLIPSIS, IDENTIFIER, REST_BINDING_PATTERN).spaceIf(false) // Todo - Verify .beforeInside(COLON, FIELD_REF_BINDING_PATTERN).spaceIf(false) .afterInside(COLON, FIELD_REF_BINDING_PATTERN).spaceIf(true) .between(LEFT_BRACE, REST_REF_BINDING_PATTERN).spaceIf(true) .between(REST_REF_BINDING_PATTERN, RIGHT_BRACE).spaceIf(true) .betweenInside(ELLIPSIS, VARIABLE_REFERENCE, REST_REF_BINDING_PATTERN).spaceIf(false) // Todo - Verify .between(LEFT_PARENTHESIS, BINDING_REF_PATTERN).spaceIf(false) .between(BINDING_REF_PATTERN, RIGHT_PARENTHESIS).spaceIf(false) .beforeInside(COMMA, TUPLE_REF_BINDING_PATTERN).spaceIf(false) .afterInside(COMMA, TUPLE_REF_BINDING_PATTERN).spaceIf(false) .between(LEFT_PARENTHESIS, RIGHT_PARENTHESIS).spaceIf(false) .around(RETURN_PARAMETER).spaceIf(true) .between(SIMPLE_TYPE_NAME, IDENTIFIER).spaceIf(true) .between(SIMPLE_TYPE_NAME, EQUAL_GT).spaceIf(true) .after(ANNOTATION_ATTACHMENT).spaceIf(true) .between(FUNCTION, SIMPLE_TYPE_NAME).spaceIf(true) .between(FUNCTION, LEFT_PARENTHESIS).spaceIf(true) .around(SIMPLE_TYPE_NAME).spaceIf(false) .between(NAME_REFERENCE, RECORD_LITERAL).spaceIf(true)
@Override protected SpacingBuilder createSpacingBuilder() { return super.createSpacingBuilder() .after(SIMPLE_OPENERS).spaces(1) .before(HTML_MASON_BLOCK_CLOSER).spaces(1) .before(HTML_MASON_CALL_CLOSER).spaces(1) .before(HTML_MASON_CALL_CLOSER_UNMATCHED).spaces(1) .between(HTML_MASON_CALL_CLOSE_TAG_START, HTML_MASON_TAG_CLOSER).spaces(0) .after(HTML_MASON_CALL_CLOSE_TAG_START).spaces(1) .beforeInside(HTML_MASON_TAG_CLOSER, HTML_MASON_CALL_CLOSE_TAG).spaces(1) ; }
.afterInside(LPAREN, RESULT).none() .beforeInside(RPAREN, RESULT).none() .between(PARAMETERS, RESULT).spaces(1) .before(BLOCK).spaces(1) .after(FUNC).spaces(1) .after(LINE_COMMENT).lineBreakInCode() .after(MULTILINE_COMMENT).lineBreakInCode() .between(COMM_CASE, COLON).none() .afterInside(COLON, COMM_CLAUSE).lineBreakInCode() .betweenInside(FIELD_DECLARATION, LINE_COMMENT, STRUCT_TYPE).spaces(1) .afterInside(LPAREN, IMPORT_DECLARATION).spacing(0, 0, 1, false, 0) .beforeInside(RPAREN, IMPORT_DECLARATION).spacing(0, 0, 1, false, 0) .between(IMPORT_SPEC, IMPORT_SPEC).spacing(0, 0, 1, true, 1) .beforeInside(RPAREN, VAR_DECLARATION).spacing(0, 0, 1, false, 0) .beforeInside(TYPE, VAR_SPEC).spaces(1) .between(VAR_SPEC, VAR_SPEC).spacing(0, 0, 1, true, 1) .beforeInside(RPAREN, CONST_DECLARATION).spacing(0, 0, 1, false, 0) .beforeInside(TYPE, CONST_SPEC).spaces(1) .between(CONST_SPEC, CONST_SPEC).spacing(0, 0, 1, true, 1) .between(FIELD_DECLARATION, FIELD_DECLARATION).spacing(0, 0, 1, true, 1) .between(METHOD_SPEC, METHOD_SPEC).spacing(0, 0, 1, true, 1)
.after(OP_COMMA).spaces(1) .between(NODE_LABELS, PROPERTIES).spaces(1) .between(RELATIONSHIP_TYPES, PROPERTIES).spaces(1) .between(PARENTHESIZED_EXPRESSION, PATTERN).none() .between(NODE_LABEL, NODE_LABEL).none() .between(REL_TYPE, REL_TYPE).none() .between(NODE_PATTERN, RELATIONSHIP_PATTERN).none() .between(NODE_PATTERN, PATTERN_ELEMENT_CHAIN).none() .between(RELATIONSHIP_PATTERN, NODE_PATTERN).none() .between(PATTERN_ELEMENT_CHAIN, NODE_PATTERN).none() .between(VARIABLE, NODE_LABELS).none() .between(K_FOREACH, PARENTHESE_OPEN).spaces(1) .between(EXPRESSION, OP_PIPE).spaces(1) .between(ID_IN_COLL, OP_PIPE).spaces(1) .between(FILTER_EXPRESSION, OP_PIPE).spaces(1) .around(OP_GREATERTHANEQUALS).spaces(1) .between(STATEMENT_ITEM, STATEMENT_ITEM).blankLines(1) .after(PATTERN_COMPREHENSION).lineBreakInCode() .between(K_RETURN, RETURN_BODY).spaces(1) .between(K_WITH, RETURN_BODY).spaces(1) .between(K_DISTINCT, RETURN_BODY).spaces(1);
.between(RESERVED_PACKAGE, PACKAGE).spaces(1) .between(PACKAGE, VERSION_ELEMENT).spaces(1) .between(RESERVED_FORMAT, SUB_NAME).spaces(1) .between(ATTRIBUTES, LEFT_PAREN).spaces(1) .beforeInside(LEFT_PAREN, SUB_DEFINITIONS_TOKENSET).spaceIf(settings.SPACE_BEFORE_METHOD_PARENTHESES) .between(COLON, ATTRIBUTE).spaces(0) .between(NUMBER_CONSTANT, OPERATOR_CONCAT).spaces(1) .aroundInside(OPERATOR_CONCAT, ADD_EXPR).spaceIf(perlSettings.SPACE_AROUND_CONCAT_OPERATOR) .between(RESERVED_TERMS_BLOCKS, BLOCK).spaceIf(settings.SPACE_BEFORE_DO_LBRACE) .between(RESERVED_TERMS_BLOCKS, SUB_EXPR).spaceIf(settings.SPACE_BEFORE_DO_LBRACE) .between(RESERVED_CONDITIONAL_BRANCH_KEYWORDS, CONDITIONAL_BLOCK).spaceIf(settings.SPACE_BEFORE_IF_PARENTHESES) .between(RESERVED_COMPOUND_CONDITIONAL, CONDITION_EXPR).spaceIf(settings.SPACE_BEFORE_IF_PARENTHESES) .between(FOR_OR_FOREACH, LEFT_PAREN).spaceIf(settings.SPACE_BEFORE_IF_PARENTHESES) .between(FOR_OR_FOREACH, CONDITION_EXPR).spaceIf(settings.SPACE_BEFORE_IF_PARENTHESES) .between(FOREACH_ITERATOR, CONDITION_EXPR).spaces(1) .afterInside(FOR_OR_FOREACH, FOR_COMPOUND).spaces(1) .afterInside(FOR_OR_FOREACH, FOREACH_COMPOUND).spaces(1) .between(LABEL_KEYWORDS, SEMICOLON).spaces(0) .after(LABEL_KEYWORDS).spaces(1) .between(CUSTOM_EXPR_KEYWORDS, SEMICOLON).spaces(0) .between(CUSTOM_EXPR_KEYWORDS, PARENTHESISED_EXPR).spaces(0) .after(CUSTOM_EXPR_KEYWORDS).spaces(1)