blueloveTH 2 년 전
부모
커밋
364839586c
1개의 변경된 파일9개의 추가작업 그리고 0개의 파일을 삭제
  1. 9 0
      src/dict.h

+ 9 - 0
src/dict.h

@@ -104,6 +104,7 @@ struct Dict{
         _probe(key, ok, i);
         if(!ok) return;
         _items[i].first = nullptr;
+        _items[i].second = nullptr;
         _size--;
     }
 
@@ -129,6 +130,14 @@ struct Dict{
     }
 
     ~Dict(){ if(_items!=nullptr) pool128.dealloc(_items); }
+
+    void _gc_mark() const{
+        for(int i=0; i<_capacity; i++){
+            if(_items[i].first == nullptr) continue;
+            OBJ_MARK(_items[i].first);
+            OBJ_MARK(_items[i].second);
+        }
+    }
 };
 
 } // namespace pkpy