|
Re: Formatter inner block indentation [message #1777110 is a reply to message #1777109] |
Fri, 24 November 2017 14:25 |
|
you usually format such things at the level where they are e.g.
interior(
service.regionFor.keyword('{'),
service.regionFor.keyword('}')
)[indent]
.....
interior(
entities.regionFor.keyword('{'),
entities.regionFor.keyword('}')
)[indent]
....
interior(
entity.regionFor.keyword('{'),
entity.regionFor.keyword('}')
)[indent]
Twitter : @chrdietrich
Blog : https://www.dietrich-it.de
|
|
|
|
Re: Formatter inner block indentation [message #1777114 is a reply to message #1777113] |
Fri, 24 November 2017 16:08 |
|
you can always fall back to the region finder that uses grammar elements
class MyDslFormatter extends AbstractFormatter2 {
@Inject extension MyDslGrammarAccess
def dispatch void format(Service service, extension IFormattableDocument document) {
service.regionFor.keyword(serviceAccess.leftCurlyBracketKeyword_2).append[newLine]
service.regionFor.keyword(serviceAccess.rightCurlyBracketKeyword_4).prepend[newLine]
service.regionFor.keyword(serviceAccess.leftCurlyBracketKeyword_3_1).append[newLine]
service.regionFor.keyword(serviceAccess.rightCurlyBracketKeyword_3_3).prepend[newLine]
interior(
service.regionFor.keyword(serviceAccess.leftCurlyBracketKeyword_2),
service.regionFor.keyword(serviceAccess.rightCurlyBracketKeyword_4)
)[indent]
interior(
service.regionFor.keyword(serviceAccess.leftCurlyBracketKeyword_3_1),
service.regionFor.keyword(serviceAccess.rightCurlyBracketKeyword_3_3)
)[indent]
for (Entity entity : service.getEntities()) {
entity.format;
}
}
def dispatch void format(Entity entity, extension IFormattableDocument document) {
entity.regionFor.keyword(entityAccess.leftCurlyBracketKeyword_2).append[newLine]
entity.regionFor.keyword(entityAccess.rightCurlyBracketKeyword_4).prepend[newLine]
interior(
entity.regionFor.keyword(entityAccess.leftCurlyBracketKeyword_2),
entity.regionFor.keyword(entityAccess.rightCurlyBracketKeyword_4)
)[indent]
}
}
Twitter : @chrdietrich
Blog : https://www.dietrich-it.de
|
|
|
|
Powered by
FUDForum. Page generated in 0.03275 seconds