示例#1
0
  public synchronized JstType getType(String fullName) {

    if (fullName == null) {
      return null;
    }

    JstType type = m_refTypes.get(fullName);
    if (type != null) {
      return type;
    }

    type = m_types.get(fullName);
    if (type != null) {
      return type;
    }

    for (JstType t : m_temp) {
      if (fullName.equals(t.getName())) {
        addType(fullName, t);
        m_temp.remove(t);
        return t;
      }
    }

    // TODO remove this causes issues with user defined types and lib types
    for (IJstLib lib : m_lib.values()) {
      type = lib.getType(fullName, true);
      if (type != null) {
        return type;
      }
    }

    return null;
  }
示例#2
0
 public synchronized JstRefType getRefType(String fullName) {
   JstRefType refType = m_refTypes.get(fullName);
   if (refType != null) {
     return refType;
   }
   IJstType jstType;
   for (IJstLib lib : m_lib.values()) {
     jstType = lib.getType(fullName, true);
     if (jstType != null && jstType instanceof JstRefType) {
       return (JstRefType) jstType;
     }
   }
   return null;
 }