addIndices() — netty Function Reference
Architecture documentation for the addIndices() function in ConcurrentSkipListIntObjMultimap.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 4b0df467_4bc8_3d65_e85c_0c0d65eefc3c["addIndices()"] d9a8da36_aab9_ab33_dc67_870b34dcd270["ConcurrentSkipListIntObjMultimap"] 4b0df467_4bc8_3d65_e85c_0c0d65eefc3c -->|defined in| d9a8da36_aab9_ab33_dc67_870b34dcd270 c3cfe397_12eb_0ed0_7cef_c3f236e1c658["V()"] c3cfe397_12eb_0ed0_7cef_c3f236e1c658 -->|calls| 4b0df467_4bc8_3d65_e85c_0c0d65eefc3c 7e2d9d49_a28d_4cbe_a83c_2187034997b4["cpr()"] 4b0df467_4bc8_3d65_e85c_0c0d65eefc3c -->|calls| 7e2d9d49_a28d_4cbe_a83c_2187034997b4 style 4b0df467_4bc8_3d65_e85c_0c0d65eefc3c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
common/src/main/java/io/netty/util/concurrent/ConcurrentSkipListIntObjMultimap.java lines 707–748
static <V> boolean addIndices(Index<V> q, int skips, Index<V> x, int noKey) {
Node<V> z; int key;
if (x != null && (z = x.node) != null && (key = z.key) != noKey &&
q != null) { // hoist checks
boolean retrying = false;
for (;;) { // find splice point
Index<V> r, d; int c;
if ((r = q.right) != null) {
Node<V> p; int k;
if ((p = r.node) == null || (k = p.key) == noKey ||
p.val == null) {
RIGHT.compareAndSet(q, r, r.right);
c = 0;
} else if ((c = cpr(key, k)) > 0) {
q = r;
} else if (c == 0) {
break; // stale
}
} else {
c = -1;
}
if (c < 0) {
if ((d = q.down) != null && skips > 0) {
--skips;
q = d;
} else if (d != null && !retrying &&
!addIndices(d, 0, x.down, noKey)) {
break;
} else {
x.right = r;
if (RIGHT.compareAndSet(q, r, x)) {
return true;
} else {
retrying = true; // re-find splice point
}
}
}
}
}
return false;
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does addIndices() do?
addIndices() is a function in the netty codebase, defined in common/src/main/java/io/netty/util/concurrent/ConcurrentSkipListIntObjMultimap.java.
Where is addIndices() defined?
addIndices() is defined in common/src/main/java/io/netty/util/concurrent/ConcurrentSkipListIntObjMultimap.java at line 707.
What does addIndices() call?
addIndices() calls 1 function(s): cpr.
What calls addIndices()?
addIndices() is called by 1 function(s): V.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free