~ubuntu-branches/ubuntu/wily/aspectj/wily-proposed

« back to all changes in this revision

Viewing changes to org.aspectj/modules/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java

  • Committer: Bazaar Package Importer
  • Author(s): Damien Raude-Morvan
  • Date: 2011-03-15 23:54:31 UTC
  • mfrom: (1.2.5 upstream)
  • mto: This revision was merged to the branch mainline in revision 9.
  • Revision ID: james.westby@ubuntu.com-20110315235431-iq2gxbsx08kpwuiw
* New upstream release.
* Updated Standards-Version to 3.9.1 (no changes needed).
* Fix local Javadoc links:
  - d/patches/07_javadoc_links.diff: Use locally installed
   javadoc packages and hyperlink with them.
  - d/control: Add B-D on default-java-doc and libasm3-java-doc.
* d/control: Drop B-D on itself (our new bootstrap infrastructure doesn't need
  that anymore).
* Split packages into :
  - aspectj: only contains CLI tools.
  - libaspectj-java: JAR librairies for /usr/share/java.
  - libaspectj-java-doc: 4 API's Javadoc.
  - aspectj-doc: Programming Guides and SDK Documentation.

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
import org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration;
25
25
import org.aspectj.ajdt.internal.compiler.ast.AstUtil;
26
26
import org.aspectj.ajdt.internal.core.builder.AjBuildManager;
 
27
import org.aspectj.bridge.IMessage.Kind;
27
28
import org.aspectj.bridge.ISourceLocation;
28
 
import org.aspectj.bridge.IMessage.Kind;
29
29
import org.aspectj.org.eclipse.jdt.core.Flags;
30
30
import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
31
31
import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode;
73
73
import org.aspectj.weaver.TypeVariableDeclaringElement;
74
74
import org.aspectj.weaver.TypeVariableReference;
75
75
import org.aspectj.weaver.UnresolvedType;
 
76
import org.aspectj.weaver.UnresolvedType.TypeKind;
76
77
import org.aspectj.weaver.UnresolvedTypeVariableReferenceType;
77
78
import org.aspectj.weaver.WildcardedUnresolvedType;
78
79
import org.aspectj.weaver.World;
79
 
import org.aspectj.weaver.UnresolvedType.TypeKind;
80
80
import org.aspectj.weaver.patterns.DeclareAnnotation;
81
81
import org.aspectj.weaver.patterns.DeclareParents;
82
82
 
286
286
                        }
287
287
                        // StringBuffer parameterizedSig = new StringBuffer();
288
288
                        // parameterizedSig.append(ResolvedType.PARAMETERIZED_TYPE_IDENTIFIER);
289
 
                        //                      
 
289
                        //
290
290
                        // // String parameterizedSig = new
291
291
                        // StringBuffer().append(ResolvedType.PARAMETERIZED_TYPE_IDENTIFIER).append(CharOperation
292
292
                        // .charToString(binding.genericTypeSignature()).substring(1)).toString();
309
309
                        if (!(binding instanceof SourceTypeBinding)) {
310
310
                                throw new RuntimeException("Cant get the generic sig for " + binding.debugName());
311
311
                        }
312
 
                        return UnresolvedType.forGenericType(getName(binding), tVars, CharOperation.charToString(((SourceTypeBinding) binding)
313
 
                                        .genericSignature()));
 
312
                        return UnresolvedType.forGenericType(getName(binding), tVars,
 
313
                                        CharOperation.charToString(((SourceTypeBinding) binding).genericSignature()));
314
314
                }
315
315
 
316
316
                // LocalTypeBinding have a name $Local$, we can get the real name by using the signature....
583
583
                if (realDeclaringType.isRawType()) {
584
584
                        realDeclaringType = realDeclaringType.getGenericType();
585
585
                }
586
 
                ResolvedMemberImpl ret = new EclipseResolvedMember(binding, Member.FIELD, realDeclaringType, binding.modifiers, world
587
 
                                .resolve(fromBinding(binding.type)), new String(binding.name), UnresolvedType.NONE);
 
586
                ResolvedMemberImpl ret = new EclipseResolvedMember(binding, Member.FIELD, realDeclaringType, binding.modifiers,
 
587
                                world.resolve(fromBinding(binding.type)), new String(binding.name), UnresolvedType.NONE);
588
588
                return ret;
589
589
        }
590
590
 
800
800
         * Build a new Eclipse SyntheticFieldBinding for an AspectJ ResolvedMember.
801
801
         */
802
802
        public SyntheticFieldBinding createSyntheticFieldBinding(SourceTypeBinding owningType, ResolvedMember member) {
803
 
                SyntheticFieldBinding sfb = new SyntheticFieldBinding(member.getName().toCharArray(), makeTypeBinding(member
804
 
                                .getReturnType()), member.getModifiers() | Flags.AccSynthetic, owningType, Constant.NotAConstant, -1); // index
 
803
                SyntheticFieldBinding sfb = new SyntheticFieldBinding(member.getName().toCharArray(),
 
804
                                makeTypeBinding(member.getReturnType()), member.getModifiers() | Flags.AccSynthetic, owningType,
 
805
                                Constant.NotAConstant, -1); // index
805
806
                // filled in
806
807
                // later
807
808
                owningType.addSyntheticField(sfb);
832
833
 
833
834
                FieldBinding fb = null;
834
835
                if (member.getName().startsWith(NameMangler.PREFIX)) {
835
 
                        fb = new SyntheticFieldBinding(member.getName().toCharArray(), makeTypeBinding(member.getReturnType()), member
836
 
                                        .getModifiers()
837
 
                                        | Flags.AccSynthetic, currentType, Constant.NotAConstant, -1); // index filled in later
 
836
                        fb = new SyntheticFieldBinding(member.getName().toCharArray(), makeTypeBinding(member.getReturnType()),
 
837
                                        member.getModifiers() | Flags.AccSynthetic, currentType, Constant.NotAConstant, -1); // index filled in later
838
838
                } else {
839
839
                        fb = new FieldBinding(member.getName().toCharArray(), makeTypeBinding(member.getReturnType()), member.getModifiers(),
840
840
                                        currentType, Constant.NotAConstant);
917
917
                }
918
918
 
919
919
                currentType = declaringType;
920
 
                MethodBinding mb = new MethodBinding(member.getModifiers(), member.getName().toCharArray(), makeTypeBinding(member
921
 
                                .getReturnType()), makeTypeBindings(member.getParameterTypes()), makeReferenceBindings(member.getExceptions()),
922
 
                                declaringType);
 
920
                MethodBinding mb = new MethodBinding(member.getModifiers(), member.getName().toCharArray(),
 
921
                                makeTypeBinding(member.getReturnType()), makeTypeBindings(member.getParameterTypes()),
 
922
                                makeReferenceBindings(member.getExceptions()), declaringType);
923
923
 
924
924
                if (tvbs != null) {
925
925
                        mb.typeVariables = tvbs;
980
980
        // // } else {
981
981
        // // declaringElement = makeTypeBinding((UnresolvedType)tVar.getDeclaringElement());
982
982
        // // }
983
 
        //                
 
983
        //
984
984
        // tvBinding = new TypeVariableBinding(tv.getName().toCharArray(),null,tv.getRank());
985
 
        //                
 
985
        //
986
986
        // typeVariableToTypeBinding.put(tv.getName(),tvBinding);
987
987
        // tvBinding.superclass=(ReferenceBinding)makeTypeBinding(tv.getUpperBound());
988
988
        // tvBinding.firstBound=makeTypeBinding(tv.getFirstBound());
1018
1018
                        // }
1019
1019
                        tvBinding = new TypeVariableBinding(tv.getName().toCharArray(), declaringElement, tv.getRank());
1020
1020
                        typeVariableToTypeBinding.put(tv.getName(), tvBinding);
1021
 
                        if (tv.getSuperclass() != null) {
 
1021
 
 
1022
                        if (tv.getSuperclass() != null
 
1023
                                        && (!tv.getSuperclass().getSignature().equals("Ljava/lang/Object;") || tv.getSuperInterfaces() != null)) {
1022
1024
                                tvBinding.superclass = (ReferenceBinding) makeTypeBinding(tv.getSuperclass());
1023
1025
                        }
1024
1026
                        tvBinding.firstBound = makeTypeBinding(tv.getFirstBound());