package bluej.stride.framedjava.ast;

import java.util.Arrays;
import java.util.List;

public enum SuperThis{
   SUPER("super"), THIS("this"), EMPTY("");
   
   
    
   
   private String displayName;
    
   
   private SuperThis(String displayName)
   {        
      this.displayName = displayName;     
      }
    
   
   @Override
   
   public String toString()
   {        
      return displayName;     
      }
    
   
   public String getJavaCode()
   {
      if (this == EMPTY)
           
      return "empty_super_this";
       
      else{ return displayName;
         }     
      }
    
   
   public static List all()
   {
      return Arrays.asList(SUPER, THIS);     
      }

   
   public static SuperThis fromString(String s)
   {        
      for (SuperThis a : all())
       {
         if (a.toString().equals(s)) {                
            return a;             
            }         
         }
       
      return null;     
      }
    
   
   public static boolean isValid(SuperThis st)
   {        
      return st == SUPER || st == THIS;     
      } 
   }

.   SuperThis
.   toString
.   getJavaCode
.   all
.   fromString
.   isValid




68 neLoCode + 0 LoComm