1 11 package org.eclipse.jdt.internal.compiler.lookup; 12 13 import org.eclipse.jdt.core.compiler.CharOperation; 14 15 public final class MemberTypeBinding extends NestedTypeBinding { 16 public MemberTypeBinding(char[][] compoundName, ClassScope scope, SourceTypeBinding enclosingType) { 17 super(compoundName, scope, enclosingType); 18 this.tagBits |= TagBits.MemberTypeMask; 19 } 20 void checkSyntheticArgsAndFields() { 21 if (this.isStatic()) return; 22 if (this.isInterface()) return; 23 this.addSyntheticArgumentAndField(this.enclosingType); 24 } 25 29 30 public char[] constantPoolName() { 31 if (constantPoolName != null) 32 return constantPoolName; 33 34 return constantPoolName = CharOperation.concat(enclosingType().constantPoolName(), sourceName, '$'); 35 } 36 37 40 public void initializeDeprecatedAnnotationTagBits() { 41 if ((this.tagBits & TagBits.DeprecatedAnnotationResolved) == 0) { 42 super.initializeDeprecatedAnnotationTagBits(); 43 if ((this.tagBits & TagBits.AnnotationDeprecated) == 0) { 44 ReferenceBinding enclosing; 46 if (((enclosing = this.enclosingType()).tagBits & TagBits.DeprecatedAnnotationResolved) == 0) { 47 enclosing.initializeDeprecatedAnnotationTagBits(); 48 } 49 if (enclosing.isViewedAsDeprecated()) { 50 this.modifiers |= ExtraCompilerModifiers.AccDeprecatedImplicitly; 51 } 52 } 53 } 54 } 55 public String toString() { 56 return "Member type : " + new String (sourceName()) + " " + super.toString(); } 58 } 59 | Popular Tags |