Package org.aspectj.org.eclipse.jdt.internal.compiler.lookup

Examples of org.aspectj.org.eclipse.jdt.internal.compiler.lookup.FieldBinding


  }

  private JavaElement getUnresolvedJavaElement() {
    if (isField()) {
      // field
      FieldBinding fieldBinding = (FieldBinding) this.binding;
      if (fieldBinding.declaringClass == null) return null; // arraylength
      IType declaringType = (IType) getDeclaringClass().getJavaElement();
      if (declaringType == null) return null;
      return (JavaElement) declaringType.getField(getName());
    }
View Full Code Here


   * @see IVariableBinding#getVariableDeclaration()
   * @since 3.1
   */
  public IVariableBinding getVariableDeclaration() {
    if (this.isField()) {
      FieldBinding fieldBinding = (FieldBinding) this.binding;
      return this.resolver.getVariableBinding(fieldBinding.original());
    }
    return this;
  }
View Full Code Here

        //!!! understand and fix this case later
        receiverType = ref.otherBindings[0].declaringClass;
      }
     
      for (int i=0, len=ref.otherBindings.length; i < len; i++) {
        FieldBinding binding = ref.otherBindings[i];
        ref.otherBindings[i] = getAccessibleField(binding, receiverType);
        receiverType = binding.type;
      }
    }
  }
View Full Code Here

      binding.modifiers = AstUtil.makePackageVisible(binding.modifiers);
    }
   
    ResolvedMember m = world.makeResolvedMember(binding, receiverType);
    if (inAspect.accessForInline.containsKey(m)) return (FieldBinding)inAspect.accessForInline.get(m);
    FieldBinding ret = new InlineAccessFieldBinding(inAspect, binding, m);
   
    //System.err.println("   made accessor: " + ret);
   
    inAspect.accessForInline.put(m, ret);
    return ret;
View Full Code Here

    int codeAttributeOffset = classFile.contentsOffset;
    classFile.generateCodeAttributeHeader();
    CodeStream codeStream = classFile.codeStream;
    codeStream.reset(this, classFile);
   
    FieldBinding classField = world.makeFieldBinding(
      AjcMemberMaker.interFieldClassField(sig, aspectType),munger.getTypeVariableAliases());
   
    codeStream.initializeMaxLocals(binding);
    if (isGetter) {
      if (onTypeBinding.isInterface()) {
View Full Code Here

         *   throw new NoAspectBoundException("A", ajc$initFailureCause);
         * else
         *   return ajc$perSingletonInstance;
         */
                // body starts here (see end of each line for what it is doing!)
        FieldBinding fb = world.makeFieldBinding(AjcMemberMaker.perSingletonField(typeX));
        codeStream.getstatic(fb);                                                              // GETSTATIC
        Label isNonNull = new Label(codeStream);
        codeStream.ifnonnull(isNonNull);                                                       // IFNONNULL
        codeStream.new_(world.makeTypeBinding(AjcMemberMaker.NO_ASPECT_BOUND_EXCEPTION));      // NEW
        codeStream.dup();                                                                      // DUP
View Full Code Here

      generateInlineAccessMethod(classFile, (MethodBinding)binding, member);
    }
  }
 
  private void generateInlineAccessors(ClassFile classFile, final InlineAccessFieldBinding accessField, final ResolvedMember field) {
    final FieldBinding fieldBinding = factory.makeFieldBinding(field);     
     
    generateMethod(classFile, accessField.reader,
      makeEffectiveSignatureAttribute(field,Shadow.FieldGet,false),
      new BodyGenerator() {
      public void generate(CodeStream codeStream) {
View Full Code Here

      }
    }

    FieldBinding[] fields = binding.fields();
    for (int i=0, len=fields.length; i < len; i++) {
      FieldBinding f = fields[i];
      declaredFields.add(factory.makeResolvedMember(f));
    }
     
    this.declaredPointcuts = (ResolvedPointcutDefinition[])
      declaredPointcuts.toArray(new ResolvedPointcutDefinition[declaredPointcuts.size()]);
View Full Code Here

  private List interTypeMethods = new ArrayList();
 
  public SourceTypeBinding sourceTypeBinding;
 
  public FieldBinding getField(SourceTypeBinding sourceTypeBinding,char[] fieldName,InvocationSite site,Scope scope) {
    FieldBinding retField = sourceTypeBinding.getFieldBase(fieldName, true)// XXX may need to get the correct value for second parameter in the future (see #55341)
    if (interTypeFields.isEmpty()) return retField;
    int fieldLength = fieldName.length;
   
    for (int i=0, len=interTypeFields.size(); i < len; i++) {
      FieldBinding field = (FieldBinding)interTypeFields.get(i);
      if (field.name.length == fieldLength   && CharOperation.prefixEquals(field.name, fieldName)) {
        retField = resolveConflicts(sourceTypeBinding, retField, field, site, scope)
      }
    }
   
View Full Code Here

  }
 

  private void mungeNewField(SourceTypeBinding sourceType, NewFieldTypeMunger munger) {   
    if (shouldTreatAsPublic() && !targetTypeX.isInterface()) {
      FieldBinding binding = world.makeFieldBinding(munger);
      findOrCreateInterTypeMemberFinder(sourceType).addInterTypeField(binding);
      //classScope.referenceContext.binding.addField(binding);
    } else {
      InterTypeFieldBinding binding =
        new InterTypeFieldBinding(world, munger, aspectType, sourceMethod);
View Full Code Here

TOP

Related Classes of org.aspectj.org.eclipse.jdt.internal.compiler.lookup.FieldBinding

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.