Package org.eclipse.xtend.lib.macro.declaration

Examples of org.eclipse.xtend.lib.macro.declaration.MutableTypeDeclaration


    Expression _initializer = field.getInitializer();
    boolean _tripleEquals = (_initializer == null);
    if (_tripleEquals) {
      context.addError(field, "A lazy field must have an initializer.");
    }
    MutableTypeDeclaration _declaringType = field.getDeclaringType();
    String _simpleName = field.getSimpleName();
    String _plus = ("_init" + _simpleName);
    final Procedure1<MutableMethodDeclaration> _function = new Procedure1<MutableMethodDeclaration>() {
      public void apply(final MutableMethodDeclaration it) {
        it.setVisibility(Visibility.PRIVATE);
        TypeReference _type = field.getType();
        it.setReturnType(_type);
        Expression _initializer = field.getInitializer();
        it.setBody(_initializer);
      }
    };
    _declaringType.addMethod(_plus, _function);
    MutableTypeDeclaration _declaringType_1 = field.getDeclaringType();
    String _simpleName_1 = field.getSimpleName();
    String _firstUpper = StringExtensions.toFirstUpper(_simpleName_1);
    String _plus_1 = ("get" + _firstUpper);
    final Procedure1<MutableMethodDeclaration> _function_1 = new Procedure1<MutableMethodDeclaration>() {
      public void apply(final MutableMethodDeclaration it) {
        TypeReference _type = field.getType();
        it.setReturnType(_type);
        final CompilationStrategy _function = new CompilationStrategy() {
          public CharSequence compile(final CompilationStrategy.CompilationContext it) {
            StringConcatenation _builder = new StringConcatenation();
            _builder.append("if (");
            String _simpleName = field.getSimpleName();
            _builder.append(_simpleName, "");
            _builder.append("==null)");
            _builder.newLineIfNotEmpty();
            _builder.append("  ");
            String _simpleName_1 = field.getSimpleName();
            _builder.append(_simpleName_1, "  ");
            _builder.append(" = _init");
            String _simpleName_2 = field.getSimpleName();
            _builder.append(_simpleName_2, "  ");
            _builder.append("();");
            _builder.newLineIfNotEmpty();
            _builder.append("return ");
            String _simpleName_3 = field.getSimpleName();
            _builder.append(_simpleName_3, "");
            _builder.append(";");
            _builder.newLineIfNotEmpty();
            return _builder;
          }
        };
        it.setBody(_function);
      }
    };
    _declaringType_1.addMethod(_plus_1, _function_1);
  }
View Full Code Here


  public CharSequence lock() {
    CharSequence _xifexpression = null;
    boolean _isStatic = this.method.isStatic();
    if (_isStatic) {
      StringConcatenation _builder = new StringConcatenation();
      MutableTypeDeclaration _declaringType = this.method.getDeclaringType();
      String _simpleName = _declaringType.getSimpleName();
      _builder.append(_simpleName, "");
      _builder.append(".class");
      _xifexpression = _builder;
    } else {
      _xifexpression = "this";
View Full Code Here

TOP

Related Classes of org.eclipse.xtend.lib.macro.declaration.MutableTypeDeclaration

Copyright © 2018 www.massapicom. 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.