use of org.eclipse.xtend.ide.codebuilder.AbstractParameterBuilder in project xtext-xtend by eclipse.
the class MemberFromSuperImplementor method initializeExecutableBuilder.
protected void initializeExecutableBuilder(final AbstractExecutableBuilder builder, final JvmDeclaredType overrider, final IResolvedExecutable overridden) {
final JvmExecutable executable = overridden.getDeclaration();
builder.setContext(overrider);
builder.setVisibility(overridden.getDeclaration().getVisibility());
final Procedure2<LightweightTypeReference, Integer> _function = (LightweightTypeReference it, Integer index) -> {
final JvmFormalParameter declaredParameter = executable.getParameters().get((index).intValue());
final AbstractParameterBuilder parameterBuilder = builder.newParameterBuilder();
parameterBuilder.setName(declaredParameter.getSimpleName());
parameterBuilder.setType(it);
JvmAnnotationReference _findAnnotation = this.annotationLookup.findAnnotation(declaredParameter, Extension.class);
boolean _tripleNotEquals = (_findAnnotation != null);
parameterBuilder.setExtensionFlag(_tripleNotEquals);
};
IterableExtensions.<LightweightTypeReference>forEach(overridden.getResolvedParameterTypes(), _function);
builder.setVarArgsFlag(executable.isVarArgs());
builder.setExceptions(overridden.getResolvedExceptions());
}
use of org.eclipse.xtend.ide.codebuilder.AbstractParameterBuilder in project xtext-xtend by eclipse.
the class ConstructorBuilderTest method testXtendParameterNames.
@Test
public void testXtendParameterNames() {
AbstractConstructorBuilder _createConstructorBuilder = this._codeBuilderFactory.createConstructorBuilder(this.getXtendClass());
final Procedure1<AbstractConstructorBuilder> _function = (AbstractConstructorBuilder it) -> {
it.setContext(this.getXtendClass());
it.setVisibility(JvmVisibility.PROTECTED);
AbstractParameterBuilder _newParameterBuilder = it.newParameterBuilder();
final Procedure1<AbstractParameterBuilder> _function_1 = (AbstractParameterBuilder it_1) -> {
it_1.setType(this.createTypeRef(this.getXtendClass()));
it_1.setName("bar");
};
ObjectExtensions.<AbstractParameterBuilder>operator_doubleArrow(_newParameterBuilder, _function_1);
AbstractParameterBuilder _newParameterBuilder_1 = it.newParameterBuilder();
final Procedure1<AbstractParameterBuilder> _function_2 = (AbstractParameterBuilder it_1) -> {
it_1.setType(this.createTypeRef(this.getJavaClass()));
it_1.setName("foo");
};
ObjectExtensions.<AbstractParameterBuilder>operator_doubleArrow(_newParameterBuilder_1, _function_2);
};
AbstractConstructorBuilder _doubleArrow = ObjectExtensions.<AbstractConstructorBuilder>operator_doubleArrow(_createConstructorBuilder, _function);
StringConcatenation _builder = new StringConcatenation();
_builder.append("protected new(Foo bar, Bar foo) {");
_builder.newLine();
_builder.append(" ");
_builder.append(AbstractBuilderTest.DEFAULT_BODY, " ");
_builder.newLineIfNotEmpty();
_builder.append("}");
this.assertBuilds(_doubleArrow, _builder.toString());
}
use of org.eclipse.xtend.ide.codebuilder.AbstractParameterBuilder in project xtext-xtend by eclipse.
the class MethodBuilderTest method testJavaNamedParameter.
@Test
public void testJavaNamedParameter() {
AbstractMethodBuilder _createMethodBuilder = this._codeBuilderFactory.createMethodBuilder(this.getJavaClass());
final Procedure1<AbstractMethodBuilder> _function = (AbstractMethodBuilder it) -> {
it.setContext(this.getJavaClass());
it.setMethodName("foo");
AbstractParameterBuilder _newParameterBuilder = it.newParameterBuilder();
final Procedure1<AbstractParameterBuilder> _function_1 = (AbstractParameterBuilder it_1) -> {
it_1.setName("bar");
it_1.setType(this.createTypeRef(this.getXtendClass()));
};
ObjectExtensions.<AbstractParameterBuilder>operator_doubleArrow(_newParameterBuilder, _function_1);
AbstractParameterBuilder _newParameterBuilder_1 = it.newParameterBuilder();
final Procedure1<AbstractParameterBuilder> _function_2 = (AbstractParameterBuilder it_1) -> {
it_1.setName("baz");
it_1.setType(this.createTypeRef(this.getXtendClass()));
};
ObjectExtensions.<AbstractParameterBuilder>operator_doubleArrow(_newParameterBuilder_1, _function_2);
};
AbstractMethodBuilder _doubleArrow = ObjectExtensions.<AbstractMethodBuilder>operator_doubleArrow(_createMethodBuilder, _function);
StringConcatenation _builder = new StringConcatenation();
_builder.append("void foo(Foo bar, Foo baz) {");
_builder.newLine();
_builder.append(" ");
_builder.append(AbstractBuilderTest.DEFAULT_BODY, " ");
_builder.append(";");
_builder.newLineIfNotEmpty();
_builder.append("}");
this.assertBuilds(_doubleArrow, _builder.toString());
}
Aggregations