class JavaId extends ConstructId {

  public static Type typeFromString(String _t) {
    if ("PACK".equalsIgnoreCase(_t)) return Type.PACKAGE;
    else if ("CLAS".equalsIgnoreCase(_t)) return Type.CLASS;
    else if ("ENUM".toString().equalsIgnoreCase(_t)) return Type.ENUM;
    else if ("INTF".toString().equalsIgnoreCase(_t)) return Type.INTERFACE;
    else if ("NCLA".toString().equalsIgnoreCase(_t)) return Type.NESTED_CLASS;
    else if ("CONS".toString().equalsIgnoreCase(_t)) return Type.CONSTRUCTOR;
    else if ("METH".toString().equalsIgnoreCase(_t)) return Type.METHOD;
    else if ("INIT".toString().equalsIgnoreCase(_t)) return Type.CLASSINIT;
    else throw new IllegalArgumentException("Unknown type [" + _t + "]");
  }

  protected  JavaId(Type _t);

}