コード例 #1
0
ファイル: MetaMethodIndex.java プロジェクト: erdi/groovy
 public Header getHeader(Class cls) {
   Header header;
   final SingleKeyHashMap.Entry head = methodHeaders.getOrPut(cls);
   if (head.value == null) {
     head.value = new Header(cls);
   }
   header = (Header) head.value;
   return header;
 }
コード例 #2
0
ファイル: MetaMethodIndex.java プロジェクト: erdi/groovy
  public MetaMethodIndex(CachedClass theCachedClass) {
    init(DEFAULT_CAPACITY);

    CachedClass last = null;
    if (!theCachedClass.isInterface()) {
      for (CachedClass c = theCachedClass; c != null; c = c.getCachedSuperClass()) {
        final SingleKeyHashMap.Entry e = methodHeaders.getOrPut(c.getTheClass());
        e.value = new Header(c.getTheClass(), last == null ? null : last.getTheClass());
        last = c;
      }
    } else {
      final SingleKeyHashMap.Entry e = methodHeaders.getOrPut(Object.class);
      e.value = new Header(Object.class, theCachedClass.getTheClass());
    }
  }