|
11 | 11 |
|
12 | 12 | import java.util.Set;
|
13 | 13 |
|
| 14 | +import org.truffleruby.RubyContext; |
| 15 | +import org.truffleruby.collections.PEBiFunction; |
| 16 | +import org.truffleruby.core.hash.library.BucketsHashStore; |
| 17 | +import org.truffleruby.core.hash.library.CompactHashStore; |
| 18 | +import org.truffleruby.core.hash.library.HashStoreLibrary; |
| 19 | +import org.truffleruby.core.klass.RubyClass; |
| 20 | +import org.truffleruby.interop.ForeignToRubyNode; |
| 21 | +import org.truffleruby.language.Nil; |
| 22 | +import org.truffleruby.language.RubyDynamicObject; |
| 23 | +import org.truffleruby.language.dispatch.DispatchNode; |
| 24 | +import org.truffleruby.language.objects.IsFrozenNode; |
| 25 | +import org.truffleruby.language.objects.ObjectGraph; |
| 26 | +import org.truffleruby.language.objects.ObjectGraphNode; |
| 27 | + |
14 | 28 | import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
|
15 | 29 | import com.oracle.truffle.api.dsl.Bind;
|
16 | 30 | import com.oracle.truffle.api.dsl.Cached;
|
|
26 | 40 | import com.oracle.truffle.api.library.ExportMessage;
|
27 | 41 | import com.oracle.truffle.api.nodes.Node;
|
28 | 42 | import com.oracle.truffle.api.object.Shape;
|
29 |
| - |
30 | 43 | import com.oracle.truffle.api.profiles.InlinedConditionProfile;
|
31 |
| -import org.truffleruby.RubyContext; |
32 |
| -import org.truffleruby.collections.PEBiFunction; |
33 |
| -import org.truffleruby.core.hash.library.BucketsHashStore; |
34 |
| -import org.truffleruby.core.hash.library.HashStoreLibrary; |
35 |
| -import org.truffleruby.core.klass.RubyClass; |
36 |
| -import org.truffleruby.interop.ForeignToRubyNode; |
37 |
| -import org.truffleruby.language.Nil; |
38 |
| -import org.truffleruby.language.RubyDynamicObject; |
39 |
| -import org.truffleruby.language.dispatch.DispatchNode; |
40 |
| -import org.truffleruby.language.objects.IsFrozenNode; |
41 |
| -import org.truffleruby.language.objects.ObjectGraph; |
42 |
| -import org.truffleruby.language.objects.ObjectGraphNode; |
43 | 44 |
|
44 | 45 | @ExportLibrary(InteropLibrary.class)
|
45 | 46 | @ImportStatic(HashGuards.class)
|
@@ -86,6 +87,8 @@ public String toString() {
|
86 | 87 | public void getAdjacentObjects(Set<Object> reachable) {
|
87 | 88 | if (store instanceof BucketsHashStore) {
|
88 | 89 | ((BucketsHashStore) store).getAdjacentObjects(reachable);
|
| 90 | + } else if (store instanceof CompactHashStore) { |
| 91 | + ((CompactHashStore) store).getAdjacentObjects(reachable); |
89 | 92 | } else {
|
90 | 93 | ObjectGraph.addProperty(reachable, store);
|
91 | 94 | }
|
|
0 commit comments