Examples of JvmOperation


Examples of org.eclipse.xtext.common.types.JvmOperation

            it.setStatic(true);
            it.setVarArgs(true);
            ScriptingJvmModelInferrer.this._jvmTypesBuilder.setBody(it, script);
          }
        };
        JvmOperation _method = ScriptingJvmModelInferrer.this._jvmTypesBuilder.toMethod(script, "main", _typeRef, _function);
        ScriptingJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members, _method);
      }
    };
    acceptor.<JvmGenericType>accept(_class, _function);
  }
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

            public void apply(final JvmOperation it) {
              XBlockExpression _body = program.getBody();
              TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _body);
            }
          };
          JvmOperation _method = TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.toMethod(program, "main", _typeRef_1, _function);
          TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members, _method);
        }
        EList<SubProgram> _subPrograms = program.getSubPrograms();
        for (final SubProgram subProgram : _subPrograms) {
          EList<JvmMember> _members_1 = it.getMembers();
          String _name = subProgram.getName();
          JvmTypeReference _elvis = null;
          JvmTypeReference _returnType = subProgram.getReturnType();
          if (_returnType != null) {
            _elvis = _returnType;
          } else {
            XBlockExpression _body_1 = subProgram.getBody();
            JvmTypeReference _inferredType = TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.inferredType(_body_1);
            _elvis = _inferredType;
          }
          final Procedure1<JvmOperation> _function_1 = new Procedure1<JvmOperation>() {
            public void apply(final JvmOperation it) {
              EList<JvmFormalParameter> _parameters = subProgram.getParameters();
              for (final JvmFormalParameter subParameter : _parameters) {
                EList<JvmFormalParameter> _parameters_1 = it.getParameters();
                String _name = subParameter.getName();
                JvmTypeReference _parameterType = subParameter.getParameterType();
                JvmFormalParameter _parameter = TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.toParameter(subParameter, _name, _parameterType);
                TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.<JvmFormalParameter>operator_add(_parameters_1, _parameter);
              }
              XBlockExpression _body = subProgram.getBody();
              TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _body);
            }
          };
          JvmOperation _method_1 = TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.toMethod(subProgram, _name, _elvis, _function_1);
          TortoiseShellJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_1, _method_1);
        }
      }
    };
    acceptor.<JvmGenericType>accept(_class, _function);
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

      JvmTypeReference _typeRef = this._typeReferenceBuilder.typeRef(DBObject.class);
      JvmField _field = this._jvmTypesBuilder.toField(bean, "_dbObject", _typeRef);
      this._jvmTypesBuilder.<JvmField>operator_add(_members, _field);
      EList<JvmMember> _members_1 = inferredType.getMembers();
      JvmTypeReference _typeRef_1 = this._typeReferenceBuilder.typeRef(DBObject.class);
      JvmOperation _getter = this._jvmTypesBuilder.toGetter(bean, "dbObject", "_dbObject", _typeRef_1);
      _xblockexpression = this._jvmTypesBuilder.<JvmOperation>operator_add(_members_1, _getter);
    }
    return _xblockexpression;
  }
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

              }
            };
            MongoBeansJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _client);
          }
        };
        JvmOperation _method = this._jvmTypesBuilder.toMethod(property, _plus, _typeRef, _function);
        _xifexpression = this._jvmTypesBuilder.<JvmOperation>operator_add(_members, _method);
      } else {
        boolean _xblockexpression_1 = false;
        {
          EList<JvmMember> _members_1 = inferredType.getMembers();
          String _name_1 = property.getName();
          String _plus_1 = ("_" + _name_1);
          JvmTypeReference _typeRef_1 = this._typeReferenceBuilder.typeRef(MongoBeanList.class, propertyType);
          JvmField _field = this._jvmTypesBuilder.toField(property, _plus_1, _typeRef_1);
          this._jvmTypesBuilder.<JvmField>operator_add(_members_1, _field);
          EList<JvmMember> _members_2 = inferredType.getMembers();
          String _name_2 = property.getName();
          String _firstUpper_1 = StringExtensions.toFirstUpper(_name_2);
          String _plus_2 = ("get" + _firstUpper_1);
          JvmTypeReference _typeRef_2 = this._typeReferenceBuilder.typeRef(List.class, propertyType);
          final Procedure1<JvmOperation> _function_1 = new Procedure1<JvmOperation>() {
            public void apply(final JvmOperation it) {
              String _documentation = MongoBeansJvmModelInferrer.this._jvmTypesBuilder.getDocumentation(property);
              MongoBeansJvmModelInferrer.this._jvmTypesBuilder.setDocumentation(it, _documentation);
              StringConcatenationClient _client = new StringConcatenationClient() {
                @Override
                protected void appendTo(StringConcatenationClient.TargetStringConcatenation _builder) {
                  _builder.append("if(_");
                  String _name = property.getName();
                  _builder.append(_name, "");
                  _builder.append("==null)");
                  _builder.newLineIfNotEmpty();
                  _builder.append("\t");
                  _builder.append("_");
                  String _name_1 = property.getName();
                  _builder.append(_name_1, "\t");
                  _builder.append(" = new ");
                  _builder.append(MongoBeanList.class, "\t");
                  _builder.append("<");
                  _builder.append(propertyType, "\t");
                  _builder.append(">(_dbObject, \"");
                  String _name_2 = property.getName();
                  _builder.append(_name_2, "\t");
                  _builder.append("\");");
                  _builder.newLineIfNotEmpty();
                  _builder.append("return _");
                  String _name_3 = property.getName();
                  _builder.append(_name_3, "");
                  _builder.append(";");
                  _builder.newLineIfNotEmpty();
                }
              };
              MongoBeansJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _client);
            }
          };
          JvmOperation _method_1 = this._jvmTypesBuilder.toMethod(property, _plus_2, _typeRef_2, _function_1);
          _xblockexpression_1 = this._jvmTypesBuilder.<JvmOperation>operator_add(_members_2, _method_1);
        }
        _xifexpression = _xblockexpression_1;
      }
      _xblockexpression = _xifexpression;
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

            }
          };
          MongoBeansJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _client);
        }
      };
      JvmOperation _method = this._jvmTypesBuilder.toMethod(property, _plus, _jvmType, _function);
      this._jvmTypesBuilder.<JvmOperation>operator_add(_members, _method);
      EList<JvmMember> _members_1 = inferredType.getMembers();
      String _name_1 = property.getName();
      String _firstUpper_1 = StringExtensions.toFirstUpper(_name_1);
      String _plus_1 = ("set" + _firstUpper_1);
      JvmTypeReference _typeRef = this._typeReferenceBuilder.typeRef(Void.TYPE);
      final Procedure1<JvmOperation> _function_1 = new Procedure1<JvmOperation>() {
        public void apply(final JvmOperation it) {
          String _documentation = MongoBeansJvmModelInferrer.this._jvmTypesBuilder.getDocumentation(property);
          MongoBeansJvmModelInferrer.this._jvmTypesBuilder.setDocumentation(it, _documentation);
          EList<JvmFormalParameter> _parameters = it.getParameters();
          String _name = property.getName();
          JvmTypeReference _jvmType = MongoBeansJvmModelInferrer.this.getJvmType(property);
          JvmFormalParameter _parameter = MongoBeansJvmModelInferrer.this._jvmTypesBuilder.toParameter(property, _name, _jvmType);
          MongoBeansJvmModelInferrer.this._jvmTypesBuilder.<JvmFormalParameter>operator_add(_parameters, _parameter);
          StringConcatenationClient _client = new StringConcatenationClient() {
            @Override
            protected void appendTo(StringConcatenationClient.TargetStringConcatenation _builder) {
              {
                JvmTypeReference _jvmType = MongoBeansJvmModelInferrer.this.getJvmType(property);
                JvmType _type = _jvmType.getType();
                boolean _isMongoBean = MongoBeansJvmModelInferrer.this._mongoTypes.isMongoBean(_type);
                if (_isMongoBean) {
                  _builder.append("_dbObject.put(\"");
                  String _name = property.getName();
                  _builder.append(_name, "");
                  _builder.append("\", ");
                  _builder.append(WrappingUtil.class, "");
                  _builder.append(".unwrap(");
                  String _name_1 = property.getName();
                  _builder.append(_name_1, "");
                  _builder.append("));");
                  _builder.newLineIfNotEmpty();
                } else {
                  _builder.append("_dbObject.put(\"");
                  String _name_2 = property.getName();
                  _builder.append(_name_2, "");
                  _builder.append("\", ");
                  String _name_3 = property.getName();
                  _builder.append(_name_3, "");
                  _builder.append(");");
                  _builder.newLineIfNotEmpty();
                }
              }
            }
          };
          MongoBeansJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _client);
        }
      };
      JvmOperation _method_1 = this._jvmTypesBuilder.toMethod(property, _plus_1, _typeRef, _function_1);
      _xblockexpression = this._jvmTypesBuilder.<JvmOperation>operator_add(_members_1, _method_1);
    }
    return _xblockexpression;
  }
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

        MongoBeansJvmModelInferrer.this._jvmTypesBuilder.<JvmFormalParameter>operator_add(_parameters, _map);
        XExpression _body = operation.getBody();
        MongoBeansJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _body);
      }
    };
    JvmOperation _method = this._jvmTypesBuilder.toMethod(operation, _name, _returnType, _function);
    return this._jvmTypesBuilder.<JvmOperation>operator_add(_members, _method);
  }
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

      this.tortoise = tortoise;
      this.stopAtLine = stopAtLine;
      try {
        Set<EObject> _jvmElements = this._iJvmModelAssociations.getJvmElements(program);
        Iterable<JvmOperation> _filter = Iterables.<JvmOperation>filter(_jvmElements, JvmOperation.class);
        JvmOperation _head = IterableExtensions.<JvmOperation>head(_filter);
        if (_head!=null) {
          List<Object> _emptyList = CollectionLiterals.<Object>emptyList();
          this.invokeOperation(_head, null, _emptyList);
        }
      } catch (final Throwable _t) {
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

            };
            JvmField _field = TemplateJvmModelInferrer.this._jvmTypesBuilder.toField(param, _name, type, _function);
            TemplateJvmModelInferrer.this._jvmTypesBuilder.<JvmField>operator_add(_members, _field);
            EList<JvmMember> _members_1 = it.getMembers();
            String _name_1 = param.getName();
            JvmOperation _setter = TemplateJvmModelInferrer.this._jvmTypesBuilder.toSetter(param, _name_1, type);
            TemplateJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_1, _setter);
            EList<JvmMember> _members_2 = it.getMembers();
            String _name_2 = param.getName();
            JvmOperation _getter = TemplateJvmModelInferrer.this._jvmTypesBuilder.toGetter(param, _name_2, type);
            TemplateJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_2, _getter);
          }
        }
        EList<JvmMember> _members = it.getMembers();
        JvmTypeReference _newTypeRef = TemplateJvmModelInferrer.this._jvmTypesBuilder.newTypeRef(element, CharSequence.class);
        final Procedure1<JvmOperation> _function = new Procedure1<JvmOperation>() {
          public void apply(final JvmOperation it) {
            it.setVisibility(JvmVisibility.PRIVATE);
            XBlockExpression _body = element.getBody();
            TemplateJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _body);
          }
        };
        JvmOperation _method = TemplateJvmModelInferrer.this._jvmTypesBuilder.toMethod(element, "generate", _newTypeRef, _function);
        TemplateJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members, _method);
        EList<JvmMember> _members_1 = it.getMembers();
        JvmTypeReference _newTypeRef_1 = TemplateJvmModelInferrer.this._jvmTypesBuilder.newTypeRef(element, String.class);
        final Procedure1<JvmOperation> _function_1 = new Procedure1<JvmOperation>() {
          public void apply(final JvmOperation it) {
            EList<JvmFormalParameter> _parameters = it.getParameters();
            JvmTypeReference _typeRef = TemplateJvmModelInferrer.this._typeReferenceBuilder.typeRef(javaClass);
            JvmTypeReference _typeRef_1 = TemplateJvmModelInferrer.this._typeReferenceBuilder.typeRef(Procedure1.class, _typeRef);
            JvmFormalParameter _parameter = TemplateJvmModelInferrer.this._jvmTypesBuilder.toParameter(element,
              "init", _typeRef_1);
            TemplateJvmModelInferrer.this._jvmTypesBuilder.<JvmFormalParameter>operator_add(_parameters, _parameter);
            StringConcatenationClient _client = new StringConcatenationClient() {
              @Override
              protected void appendTo(StringConcatenationClient.TargetStringConcatenation _builder) {
                _builder.append("if (init != null)");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("init.apply(this);");
                _builder.newLine();
                _builder.append("String result = generate().toString();");
                _builder.newLine();
                _builder.append("// remove leading -->");
                _builder.newLine();
                _builder.append("result = result.replaceAll(\"^-->\\\\n\",\"\");");
                _builder.newLine();
                _builder.append("// trim multi-newline to single newline");
                _builder.newLine();
                _builder.append("result = result.replaceAll(\"\\\\n\\\\s*\\\\n\",\"\\n\");");
                _builder.newLine();
                _builder.append("return result;");
                _builder.newLine();
              }
            };
            TemplateJvmModelInferrer.this._jvmTypesBuilder.setBody(it, _client);
          }
        };
        JvmOperation _method_1 = TemplateJvmModelInferrer.this._jvmTypesBuilder.toMethod(element, "generate", _newTypeRef_1, _function_1);
        TemplateJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_1, _method_1);
      }
    };
    acceptor.<JvmGenericType>accept(javaClass, _function);
  }
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

            RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmField>operator_add(_members_1, _routePatternField);
            XExpression _condition = route.getCondition();
            boolean _notEquals = (!Objects.equal(_condition, null));
            if (_notEquals) {
              EList<JvmMember> _members_2 = it.getMembers();
              JvmOperation _routeConditionMethod = RouteJvmModelInferrer.this.toRouteConditionMethod(route);
              RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_2, _routeConditionMethod);
            }
            EList<JvmMember> _members_3 = it.getMembers();
            JvmOperation _routeCallMethod = RouteJvmModelInferrer.this.toRouteCallMethod(route);
            RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_3, _routeCallMethod);
          }
        }
        Iterable<Route> _routes_1 = RouteJvmModelInferrer.this.routes(model);
        final Function1<Route, Boolean> _function_2 = new Function1<Route, Boolean>() {
          public Boolean apply(final Route it) {
            RequestType _requestType = it.getRequestType();
            return Boolean.valueOf(Objects.equal(_requestType, RequestType.GET));
          }
        };
        final Iterable<Route> getRoutes = IterableExtensions.<Route>filter(_routes_1, _function_2);
        boolean _isEmpty = IterableExtensions.isEmpty(getRoutes);
        boolean _not = (!_isEmpty);
        if (_not) {
          EList<JvmMember> _members_1 = it.getMembers();
          JvmOperation _requestHandlerMethod = RouteJvmModelInferrer.this.toRequestHandlerMethod(model, "doGet", getRoutes);
          RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_1, _requestHandlerMethod);
        }
        Iterable<Route> _routes_2 = RouteJvmModelInferrer.this.routes(model);
        final Function1<Route, Boolean> _function_3 = new Function1<Route, Boolean>() {
          public Boolean apply(final Route it) {
            RequestType _requestType = it.getRequestType();
            return Boolean.valueOf(Objects.equal(_requestType, RequestType.POST));
          }
        };
        final Iterable<Route> postRoutes = IterableExtensions.<Route>filter(_routes_2, _function_3);
        boolean _isEmpty_1 = IterableExtensions.isEmpty(postRoutes);
        boolean _not_1 = (!_isEmpty_1);
        if (_not_1) {
          EList<JvmMember> _members_2 = it.getMembers();
          JvmOperation _requestHandlerMethod_1 = RouteJvmModelInferrer.this.toRequestHandlerMethod(model, "doPost", postRoutes);
          RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_2, _requestHandlerMethod_1);
        }
        Iterable<Route> _routes_3 = RouteJvmModelInferrer.this.routes(model);
        final Function1<Route, Boolean> _function_4 = new Function1<Route, Boolean>() {
          public Boolean apply(final Route it) {
            RequestType _requestType = it.getRequestType();
            return Boolean.valueOf(Objects.equal(_requestType, RequestType.PUT));
          }
        };
        final Iterable<Route> putRoutes = IterableExtensions.<Route>filter(_routes_3, _function_4);
        boolean _isEmpty_2 = IterableExtensions.isEmpty(putRoutes);
        boolean _not_2 = (!_isEmpty_2);
        if (_not_2) {
          EList<JvmMember> _members_3 = it.getMembers();
          JvmOperation _requestHandlerMethod_2 = RouteJvmModelInferrer.this.toRequestHandlerMethod(model, "doPut", putRoutes);
          RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_3, _requestHandlerMethod_2);
        }
        Iterable<Route> _routes_4 = RouteJvmModelInferrer.this.routes(model);
        final Function1<Route, Boolean> _function_5 = new Function1<Route, Boolean>() {
          public Boolean apply(final Route it) {
            RequestType _requestType = it.getRequestType();
            return Boolean.valueOf(Objects.equal(_requestType, RequestType.DELETE));
          }
        };
        final Iterable<Route> deleteRoutes = IterableExtensions.<Route>filter(_routes_4, _function_5);
        boolean _isEmpty_3 = IterableExtensions.isEmpty(deleteRoutes);
        boolean _not_3 = (!_isEmpty_3);
        if (_not_3) {
          EList<JvmMember> _members_4 = it.getMembers();
          JvmOperation _requestHandlerMethod_3 = RouteJvmModelInferrer.this.toRequestHandlerMethod(model, "doDelete", deleteRoutes);
          RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_4, _requestHandlerMethod_3);
        }
        Iterable<Route> _routes_5 = RouteJvmModelInferrer.this.routes(model);
        final Function1<Route, Boolean> _function_6 = new Function1<Route, Boolean>() {
          public Boolean apply(final Route it) {
            RequestType _requestType = it.getRequestType();
            return Boolean.valueOf(Objects.equal(_requestType, RequestType.HEAD));
          }
        };
        final Iterable<Route> headRoutes = IterableExtensions.<Route>filter(_routes_5, _function_6);
        boolean _isEmpty_4 = IterableExtensions.isEmpty(headRoutes);
        boolean _not_4 = (!_isEmpty_4);
        if (_not_4) {
          EList<JvmMember> _members_5 = it.getMembers();
          JvmOperation _requestHandlerMethod_4 = RouteJvmModelInferrer.this.toRequestHandlerMethod(model, "doHead", headRoutes);
          RouteJvmModelInferrer.this._jvmTypesBuilder.<JvmOperation>operator_add(_members_5, _requestHandlerMethod_4);
        }
      }
    };
    acceptor.<JvmGenericType>accept(_class, _function);
View Full Code Here

Examples of org.eclipse.xtext.common.types.JvmOperation

                  it.setVisibility(JvmVisibility.PRIVATE);
                  XExpression _toInstance = binding.getToInstance();
                  GuiceModulesJvmModelInferrer.this.builder.setBody(it, _toInstance);
                }
              };
              JvmOperation _method = GuiceModulesJvmModelInferrer.this.builder.toMethod(binding, _syntheticToInstanceName, _type, _function_1);
              GuiceModulesJvmModelInferrer.this.builder.<JvmOperation>operator_add(_members_1, _method);
            }
            KeyAST _to = binding.getTo();
            XAnnotation _annotation = null;
            if (_to!=null) {
              _annotation=_to.getAnnotation();
            }
            boolean _notEquals_1 = (!Objects.equal(_annotation, null));
            if (_notEquals_1) {
              EList<JvmMember> _members_2 = it.getMembers();
              KeyAST _to_1 = binding.getTo();
              String _syntheticName = GuiceModulesJvmModelInferrer.this.syntheticName(_to_1);
              KeyAST _to_2 = binding.getTo();
              JvmTypeReference _type_1 = _to_2.getType();
              final Procedure1<JvmField> _function_2 = new Procedure1<JvmField>() {
                public void apply(final JvmField it) {
                  KeyAST _to = binding.getTo();
                  XAnnotation _annotation = _to.getAnnotation();
                  GuiceModulesJvmModelInferrer.this.builder.addAnnotation(it, _annotation);
                  it.setVisibility(JvmVisibility.PRIVATE);
                }
              };
              JvmField _field_1 = GuiceModulesJvmModelInferrer.this.builder.toField(binding, _syntheticName, _type_1, _function_2);
              GuiceModulesJvmModelInferrer.this.builder.<JvmField>operator_add(_members_2, _field_1);
            }
            KeyAST _from_1 = binding.getFrom();
            XAnnotation _annotation_1 = _from_1.getAnnotation();
            boolean _notEquals_2 = (!Objects.equal(_annotation_1, null));
            if (_notEquals_2) {
              EList<JvmMember> _members_3 = it.getMembers();
              KeyAST _from_2 = binding.getFrom();
              String _syntheticName_1 = GuiceModulesJvmModelInferrer.this.syntheticName(_from_2);
              KeyAST _from_3 = binding.getFrom();
              JvmTypeReference _type_2 = _from_3.getType();
              final Procedure1<JvmField> _function_3 = new Procedure1<JvmField>() {
                public void apply(final JvmField it) {
                  KeyAST _from = binding.getFrom();
                  XAnnotation _annotation = _from.getAnnotation();
                  GuiceModulesJvmModelInferrer.this.builder.addAnnotation(it, _annotation);
                  it.setVisibility(JvmVisibility.PRIVATE);
                }
              };
              JvmField _field_2 = GuiceModulesJvmModelInferrer.this.builder.toField(binding, _syntheticName_1, _type_2, _function_3);
              GuiceModulesJvmModelInferrer.this.builder.<JvmField>operator_add(_members_3, _field_2);
            }
          }
        }
        EList<JvmMember> _members_1 = it.getMembers();
        JvmTypeReference _typeRef_1 = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(void.class);
        final Procedure1<JvmOperation> _function_1 = new Procedure1<JvmOperation>() {
          public void apply(final JvmOperation it) {
            EList<JvmFormalParameter> _parameters = it.getParameters();
            JvmTypeReference _typeRef = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(Binder.class);
            JvmFormalParameter _parameter = GuiceModulesJvmModelInferrer.this.builder.toParameter(module, "binder", _typeRef);
            GuiceModulesJvmModelInferrer.this.builder.<JvmFormalParameter>operator_add(_parameters, _parameter);
            StringConcatenationClient _client = new StringConcatenationClient() {
              @Override
              protected void appendTo(StringConcatenationClient.TargetStringConcatenation _builder) {
                _builder.append("configure(binder, new ");
                _builder.append(HashSet.class, "");
                _builder.append("<");
                JvmTypeReference _wildcard = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.wildcard();
                JvmTypeReference _typeRef = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(Key.class, _wildcard);
                _builder.append(_typeRef, "");
                _builder.append(">());");
                _builder.newLineIfNotEmpty();
              }
            };
            GuiceModulesJvmModelInferrer.this.builder.setBody(it, _client);
          }
        };
        JvmOperation _method = GuiceModulesJvmModelInferrer.this.builder.toMethod(module, "configure", _typeRef_1, _function_1);
        GuiceModulesJvmModelInferrer.this.builder.<JvmOperation>operator_add(_members_1, _method);
        EList<JvmMember> _members_2 = it.getMembers();
        JvmTypeReference _typeRef_2 = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(void.class);
        final Procedure1<JvmOperation> _function_2 = new Procedure1<JvmOperation>() {
          public void apply(final JvmOperation it) {
            GuiceModulesJvmModelInferrer.this.builder.setDocumentation(it, "Registers bindings for keys not present in the given set.");
            EList<JvmFormalParameter> _parameters = it.getParameters();
            JvmTypeReference _typeRef = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(Binder.class);
            JvmFormalParameter _parameter = GuiceModulesJvmModelInferrer.this.builder.toParameter(module, "bind", _typeRef);
            GuiceModulesJvmModelInferrer.this.builder.<JvmFormalParameter>operator_add(_parameters, _parameter);
            EList<JvmFormalParameter> _parameters_1 = it.getParameters();
            JvmTypeReference _wildcard = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.wildcard();
            JvmTypeReference _typeRef_1 = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(Key.class, _wildcard);
            JvmTypeReference _typeRef_2 = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(Set.class, _typeRef_1);
            JvmFormalParameter _parameter_1 = GuiceModulesJvmModelInferrer.this.builder.toParameter(module, "usedKeys", _typeRef_2);
            GuiceModulesJvmModelInferrer.this.builder.<JvmFormalParameter>operator_add(_parameters_1, _parameter_1);
            StringConcatenationClient _client = new StringConcatenationClient() {
              @Override
              protected void appendTo(StringConcatenationClient.TargetStringConcatenation _builder) {
                _builder.append("try {");
                _builder.newLine();
                {
                  EList<BindingAST> _bindings = module.getBindings();
                  for(final BindingAST b : _bindings) {
                    _builder.append("\t");
                    _builder.append("{");
                    _builder.newLine();
                    _builder.append("\t");
                    _builder.append("\t");
                    KeyAST _from = b.getFrom();
                    JvmTypeReference _type = _from.getType();
                    JvmTypeReference _typeRef = GuiceModulesJvmModelInferrer.this._typeReferenceBuilder.typeRef(Key.class, _type);
                    _builder.append(_typeRef, "\t\t");
                    _builder.append(" key = ");
                    KeyAST _from_1 = b.getFrom();
                    StringConcatenationClient _guiceKey = GuiceModulesJvmModelInferrer.this.guiceKey(_from_1);
                    _builder.append(_guiceKey, "\t\t");
                    _builder.append(";");
                    _builder.newLineIfNotEmpty();
                    _builder.append("\t");
                    _builder.append("\t");
                    _builder.append("if (usedKeys.add(key)) {");
                    _builder.newLine();
                    {
                      XExpression _toInstance = b.getToInstance();
                      boolean _notEquals = (!Objects.equal(_toInstance, null));
                      if (_notEquals) {
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("bind.bind(key).toInstance(");
                        String _syntheticToInstanceName = GuiceModulesJvmModelInferrer.this.syntheticToInstanceName(b);
                        _builder.append(_syntheticToInstanceName, "\t\t\t");
                        _builder.append("());");
                        _builder.newLineIfNotEmpty();
                      } else {
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("bind.bind(key).to(");
                        KeyAST _to = b.getTo();
                        StringConcatenationClient _guiceKey_1 = GuiceModulesJvmModelInferrer.this.guiceKey(_to);
                        _builder.append(_guiceKey_1, "\t\t\t");
                        _builder.append(");");
                        _builder.newLineIfNotEmpty();
                      }
                    }
                    _builder.append("\t");
                    _builder.append("\t");
                    _builder.append("}");
                    _builder.newLine();
                    _builder.append("\t");
                    _builder.append("}");
                    _builder.newLine();
                  }
                }
                {
                  EList<ModuleAST> _mixins = module.getMixins();
                  for(final ModuleAST mix : _mixins) {
                    _builder.append("\t");
                    String _simpleName = GuiceModulesJvmModelInferrer.this.simpleName(mix);
                    _builder.append(_simpleName, "\t");
                    _builder.append(".configure(bind, usedKeys);");
                    _builder.newLineIfNotEmpty();
                  }
                }
                _builder.append("} catch (");
                _builder.append(Exception.class, "");
                _builder.append(" e) {");
                _builder.newLineIfNotEmpty();
                _builder.append("\t");
                _builder.append("throw new ");
                _builder.append(RuntimeException.class, "\t");
                _builder.append("(e);");
                _builder.newLineIfNotEmpty();
                _builder.append("}");
                _builder.newLine();
              }
            };
            GuiceModulesJvmModelInferrer.this.builder.setBody(it, _client);
          }
        };
        JvmOperation _method_1 = GuiceModulesJvmModelInferrer.this.builder.toMethod(module, "configure", _typeRef_2, _function_2);
        GuiceModulesJvmModelInferrer.this.builder.<JvmOperation>operator_add(_members_2, _method_1);
      }
    };
    acceptor.<JvmGenericType>accept(_class, _function);
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.