Examples of DeclareParents


Examples of org.aspectj.weaver.patterns.DeclareParents

  public ResolvedType findAspectDeclaringParents(DeclareParents p) {
    Set keys = this.members.keySet();
    for (Iterator iter = keys.iterator(); iter.hasNext();) {
      ResolvedType element = (ResolvedType) iter.next();
      for (Iterator i = ((CrosscuttingMembers)members.get(element)).getDeclareParents().iterator(); i.hasNext(); ) {
        DeclareParents dp = (DeclareParents)i.next();
        if (dp.equals(p)) return element;
      }
    }
    return null;
  }
View Full Code Here

Examples of org.aspectj.weaver.patterns.DeclareParents

        node.setDetails("\"" + genDeclareMessage(deow.getMessage()) + "\"");
       
      } else if (declare.declareDecl instanceof DeclareParents) {

        node.setKind( IProgramElement.Kind.DECLARE_PARENTS);
        DeclareParents dp = (DeclareParents)declare.declareDecl;
        node.setName(name + DECLARE_PARENTS);
       
        String kindOfDP = null;
        StringBuffer details = new StringBuffer("");
        TypePattern[] newParents = dp.getParents().getTypePatterns();
        for (int i = 0; i < newParents.length; i++) {
          TypePattern tp = newParents[i];
          UnresolvedType tx = tp.getExactType();
          if (kindOfDP == null) {
            kindOfDP = "implements ";
View Full Code Here

Examples of org.aspectj.weaver.patterns.DeclareParents

                if (fieldType.isInterface()) {
                    TypePattern parent = new ExactTypePattern(UnresolvedType.forSignature(struct.field.getSignature()), false, false);
                    parent.resolve(struct.enclosingType.getWorld());
                    // first add the declare implements like
                    List parents = new ArrayList(1); parents.add(parent);
                    DeclareParents dp = new DeclareParents(
                            typePattern,
                            parents,
                            false
                        );
                    //TODO kick ISourceLocation sl = struct.bField.getSourceLocation();    ??
                    dp.setLocation(struct.context,0,0); // not ideal...
                    struct.ajAttributes.add(
                            new AjAttribute.DeclareAttribute(
                                    dp
                            )
                    );
View Full Code Here

Examples of org.aspectj.weaver.patterns.DeclareParents

    // first pass
    // try and apply all decps - if they match, then great.  If they don't then
    // check if they are starred-annotation patterns.  If they are not starred
    // annotation patterns then they might match later...remember that...
    for (Iterator i = declareParents.iterator(); i.hasNext();) {
      DeclareParents decp = (DeclareParents)i.next();
      boolean didSomething = doDeclareParents(decp, sourceType);
      if (didSomething) {
        anyNewParents = true;
      } else {
        if (!decp.getChild().isStarAnnotation()) decpToRepeat.add(decp);
      }
    }

    for (Iterator i = declareAnnotationOnTypes.iterator(); i.hasNext();) {
      DeclareAnnotation deca = (DeclareAnnotation)i.next();
      boolean didSomething = doDeclareAnnotations(deca, sourceType,true);
      if (didSomething) {
        anyNewAnnotations = true;
      } else {
        if (!deca.getTypePattern().isStar()) decaToRepeat.add(deca);
      }
    }
   
        // now lets loop over and over until we have done all we can
    while ((anyNewAnnotations || anyNewParents) &&
        (!decpToRepeat.isEmpty() || !decaToRepeat.isEmpty())) {
      anyNewParents = anyNewAnnotations = false;
      List forRemoval = new ArrayList();
      for (Iterator i = decpToRepeat.iterator(); i.hasNext();) {
        DeclareParents decp = (DeclareParents)i.next();
        boolean didSomething = doDeclareParents(decp, sourceType);
        if (didSomething) {
          anyNewParents = true;
          forRemoval.add(decp);
        }
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.