use of org.eclipse.xtext.formatting2.IFormattableDocument in project xtext-xtend by eclipse.
the class XtendFormatter method _format.
protected void _format(final XtendConstructor func, @Extension final IFormattableDocument format) {
this.formatAnnotations(func, format, XbaseFormatterPreferenceKeys.newLineAfterConstructorAnnotations);
this.formatModifiers(func, format);
final Procedure1<IHiddenRegionFormatter> _function = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
format.append(this.textRegionExtensions.regionFor(func).keyword("new"), _function);
boolean _isEmpty = func.getTypeParameters().isEmpty();
boolean _not = (!_isEmpty);
if (_not) {
final Procedure1<IHiddenRegionFormatter> _function_1 = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
format.append(this.textRegionExtensions.regionFor(func).keyword("<"), _function_1);
EList<JvmTypeParameter> _typeParameters = func.getTypeParameters();
for (final JvmTypeParameter arg : _typeParameters) {
{
format.<JvmTypeParameter>format(arg);
final Procedure1<IHiddenRegionFormatter> _function_2 = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
final Procedure1<IHiddenRegionFormatter> _function_3 = (IHiddenRegionFormatter it) -> {
it.oneSpace();
};
format.append(format.prepend(this.textRegionExtensions.immediatelyFollowing(arg).keyword(","), _function_2), _function_3);
}
}
final Procedure1<IHiddenRegionFormatter> _function_2 = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
format.surround(this.textRegionExtensions.regionFor(func).keyword(">"), _function_2);
}
final ISemanticRegion open = this.textRegionExtensions.regionFor(func).keyword("(");
final ISemanticRegion close = this.textRegionExtensions.regionFor(func).keyword(")");
format.append(close, XbaseFormatterPreferenceKeys.bracesInNewLine);
this.formatCommaSeparatedList(func.getParameters(), open, close, format);
format.<XExpression>format(func.getExpression());
}
use of org.eclipse.xtext.formatting2.IFormattableDocument in project xtext-xtend by eclipse.
the class XtendFormatter method _format.
protected void _format(final XtendParameter param, @Extension final IFormattableDocument format) {
final Procedure1<IHiddenRegionFormatter> _function = (IHiddenRegionFormatter it) -> {
it.oneSpace();
};
format.append(this.textRegionExtensions.regionFor(param).keyword("extension"), _function);
this.formatAnnotations(param, format, XbaseFormatterPreferenceKeys.newLineAfterParameterAnnotations);
format.<JvmTypeReference>format(param.getParameterType());
final ISemanticRegion nameNode = this.textRegionExtensions.regionFor(param).feature(XtendPackage.Literals.XTEND_PARAMETER__NAME);
final Procedure1<IHiddenRegionFormatter> _function_1 = (IHiddenRegionFormatter it) -> {
it.oneSpace();
};
format.prepend(nameNode, _function_1);
}
use of org.eclipse.xtext.formatting2.IFormattableDocument in project xtext-xtend by eclipse.
the class XtendFormatter method formatTypeParameters.
protected ISemanticRegion formatTypeParameters(final XtendMember member, final List<? extends JvmTypeParameter> typeParameters, @Extension final IFormattableDocument format) {
ISemanticRegion _xifexpression = null;
boolean _isEmpty = typeParameters.isEmpty();
boolean _not = (!_isEmpty);
if (_not) {
ISemanticRegion _xblockexpression = null;
{
final Procedure1<IHiddenRegionFormatter> _function = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
format.surround(this.textRegionExtensions.regionFor(member).keyword("<"), _function);
for (final JvmTypeParameter arg : typeParameters) {
{
format.<JvmTypeParameter>format(arg);
final Procedure1<IHiddenRegionFormatter> _function_1 = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
final Procedure1<IHiddenRegionFormatter> _function_2 = (IHiddenRegionFormatter it) -> {
it.oneSpace();
};
format.append(format.prepend(this.textRegionExtensions.immediatelyFollowing(arg).keyword(","), _function_1), _function_2);
}
}
final Procedure1<IHiddenRegionFormatter> _function_1 = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
_xblockexpression = format.prepend(this.textRegionExtensions.regionFor(member).keyword(">"), _function_1);
}
_xifexpression = _xblockexpression;
}
return _xifexpression;
}
use of org.eclipse.xtext.formatting2.IFormattableDocument in project xtext-xtend by eclipse.
the class XtendFormatter method _format.
protected void _format(final XtendFile xtendFile, @Extension final IFormattableDocument format) {
final Procedure1<IHiddenRegionFormatter> _function = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
format.<XtendFile>prepend(xtendFile, _function);
final ISemanticRegion pkg = this.textRegionExtensions.regionFor(xtendFile).feature(XtendPackage.Literals.XTEND_FILE__PACKAGE);
if ((pkg != null)) {
final Procedure1<IHiddenRegionFormatter> _function_1 = (IHiddenRegionFormatter it) -> {
it.oneSpace();
};
format.prepend(pkg, _function_1);
final ISemanticRegion pkgSemicolon = pkg.immediatelyFollowing().keyword(";");
if ((pkgSemicolon != null)) {
final Procedure1<IHiddenRegionFormatter> _function_2 = (IHiddenRegionFormatter it) -> {
it.noSpace();
};
format.append(pkg, _function_2);
format.append(pkgSemicolon, XtendFormatterPreferenceKeys.blankLinesAfterPackageDecl);
} else {
format.append(pkg, XtendFormatterPreferenceKeys.blankLinesAfterPackageDecl);
}
}
XImportSection _importSection = xtendFile.getImportSection();
if (_importSection != null) {
format.<XImportSection>format(_importSection);
}
EList<XtendTypeDeclaration> _xtendTypes = xtendFile.getXtendTypes();
for (final XtendTypeDeclaration clazz : _xtendTypes) {
{
format.<XtendTypeDeclaration>format(clazz);
XtendTypeDeclaration _last = IterableExtensions.<XtendTypeDeclaration>last(xtendFile.getXtendTypes());
boolean _notEquals = (!Objects.equal(clazz, _last));
if (_notEquals) {
format.<XtendTypeDeclaration>append(clazz, XtendFormatterPreferenceKeys.blankLinesBetweenClasses);
}
}
}
final Procedure1<IHiddenRegionFormatter> _function_3 = (IHiddenRegionFormatter it) -> {
it.newLine();
};
format.<XtendFile>append(xtendFile, _function_3);
}
use of org.eclipse.xtext.formatting2.IFormattableDocument in project xtext-core by eclipse.
the class TestLanguageFormatter method _format.
protected void _format(final TypeDeclaration type, @Extension final IFormattableDocument document) {
final Procedure1<IHiddenRegionFormatter> _function = (IHiddenRegionFormatter it) -> {
it.newLine();
};
document.append(this.textRegionExtensions.regionFor(type).keyword(this._testLanguageGrammarAccess.getTypeDeclarationAccess().getLeftCurlyBracketKeyword_3()), _function);
final Procedure1<IHiddenRegionFormatter> _function_1 = (IHiddenRegionFormatter it) -> {
it.newLine();
};
final Procedure1<IHiddenRegionFormatter> _function_2 = (IHiddenRegionFormatter it) -> {
it.newLine();
};
document.append(document.prepend(this.textRegionExtensions.regionFor(type).keyword(this._testLanguageGrammarAccess.getTypeDeclarationAccess().getRightCurlyBracketKeyword_5()), _function_1), _function_2);
final Procedure1<IHiddenRegionFormatter> _function_3 = (IHiddenRegionFormatter it) -> {
it.indent();
};
document.<ISemanticRegion, ISemanticRegion>interior(this.textRegionExtensions.regionFor(type).keyword(this._testLanguageGrammarAccess.getTypeDeclarationAccess().getLeftCurlyBracketKeyword_3()), this.textRegionExtensions.regionFor(type).keyword(this._testLanguageGrammarAccess.getTypeDeclarationAccess().getRightCurlyBracketKeyword_5()), _function_3);
Iterable<Property> _filter = Iterables.<Property>filter(type.getMembers(), Property.class);
for (final Property property : _filter) {
document.<Property>format(property);
}
}
Aggregations