< prev index next >

src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java

Print this page
*** 28,11 ***
  import java.lang.annotation.Annotation;
  import java.lang.annotation.Inherited;
  import java.util.ArrayList;
  import java.util.Collections;
  import java.util.EnumSet;
- import java.util.HashMap;
  import java.util.Map;
  import java.util.Set;
  import java.util.concurrent.Callable;
  import java.util.function.Supplier;
  import java.util.function.Predicate;
--- 28,10 ---

*** 403,21 ***
              (owner.flags() & INTERFACE) != 0 && kind != MTH &&
               name != name.table.names._this;
      }
  
      public boolean isInterface() {
!         return (flags() & INTERFACE) != 0;
      }
  
      public boolean isAbstract() {
          return (flags_field & ABSTRACT) != 0;
      }
  
      public boolean isPrivate() {
          return (flags_field & Flags.AccessFlags) == PRIVATE;
      }
  
      public boolean isPublic() {
          return (flags_field & Flags.AccessFlags) == PUBLIC;
      }
  
      public boolean isEnum() {
--- 402,29 ---
              (owner.flags() & INTERFACE) != 0 && kind != MTH &&
               name != name.table.names._this;
      }
  
      public boolean isInterface() {
!         return (flags_field & INTERFACE) != 0;
      }
  
      public boolean isAbstract() {
          return (flags_field & ABSTRACT) != 0;
      }
  
      public boolean isPrivate() {
          return (flags_field & Flags.AccessFlags) == PRIVATE;
      }
  
+     public boolean isValueClass() {
+         return (flags_field & VALUE_CLASS) != 0;
+     }
+ 
+     public boolean isIdentityClass() {
+         return !isInterface() && (flags_field & IDENTITY_TYPE) != 0;
+     }
+ 
      public boolean isPublic() {
          return (flags_field & Flags.AccessFlags) == PUBLIC;
      }
  
      public boolean isEnum() {

*** 1339,11 ***
  
          public ClassSymbol(long flags, Name name, Symbol owner) {
              this(
                  flags,
                  name,
!                 new ClassType(Type.noType, null, null),
                  owner);
              this.type.tsym = this;
          }
  
          public void addPermittedSubclass(ClassSymbol csym, int pos) {
--- 1346,11 ---
  
          public ClassSymbol(long flags, Name name, Symbol owner) {
              this(
                  flags,
                  name,
!                 new ClassType(Type.noType, null, null, List.nil()),
                  owner);
              this.type.tsym = this;
          }
  
          public void addPermittedSubclass(ClassSymbol csym, int pos) {
< prev index next >