Home / Function/ fastFindReferenceWithParent() — react Function Reference

fastFindReferenceWithParent() — react Function Reference

Architecture documentation for the fastFindReferenceWithParent() function in ExhaustiveDeps.ts from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  b0c8a050_07e4_e229_6279_281564aeb478["fastFindReferenceWithParent()"]
  ea02b01a_dd46_4b35_fe00_775aec496668["ExhaustiveDeps.ts"]
  b0c8a050_07e4_e229_6279_281564aeb478 -->|defined in| ea02b01a_dd46_4b35_fe00_775aec496668
  c0937ffe_5980_6959_3af6_e18a4a23114f["rule.create()"]
  c0937ffe_5980_6959_3af6_e18a4a23114f -->|calls| b0c8a050_07e4_e229_6279_281564aeb478
  c1493148_2957_aed7_f226_a4489cdc178c["isSameIdentifier()"]
  b0c8a050_07e4_e229_6279_281564aeb478 -->|calls| c1493148_2957_aed7_f226_a4489cdc178c
  84d634ed_daf4_049c_839c_c1e7767aaaae["isAncestorNodeOf()"]
  b0c8a050_07e4_e229_6279_281564aeb478 -->|calls| 84d634ed_daf4_049c_839c_c1e7767aaaae
  fa03989d_9363_7938_ee26_36278039187c["isNodeLike()"]
  b0c8a050_07e4_e229_6279_281564aeb478 -->|calls| fa03989d_9363_7938_ee26_36278039187c
  style b0c8a050_07e4_e229_6279_281564aeb478 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/eslint-plugin-react-hooks/src/rules/ExhaustiveDeps.ts lines 2045–2079

function fastFindReferenceWithParent(start: Node, target: Node): Node | null {
  const queue = [start];
  let item: Node;

  while (queue.length) {
    item = queue.shift() as Node;

    if (isSameIdentifier(item, target)) {
      return item;
    }

    if (!isAncestorNodeOf(item, target)) {
      continue;
    }

    for (const [key, value] of Object.entries(item)) {
      if (key === 'parent') {
        continue;
      }
      if (isNodeLike(value)) {
        value.parent = item;
        queue.push(value);
      } else if (Array.isArray(value)) {
        value.forEach(val => {
          if (isNodeLike(val)) {
            val.parent = item;
            queue.push(val);
          }
        });
      }
    }
  }

  return null;
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does fastFindReferenceWithParent() do?
fastFindReferenceWithParent() is a function in the react codebase, defined in packages/eslint-plugin-react-hooks/src/rules/ExhaustiveDeps.ts.
Where is fastFindReferenceWithParent() defined?
fastFindReferenceWithParent() is defined in packages/eslint-plugin-react-hooks/src/rules/ExhaustiveDeps.ts at line 2045.
What does fastFindReferenceWithParent() call?
fastFindReferenceWithParent() calls 3 function(s): isAncestorNodeOf, isNodeLike, isSameIdentifier.
What calls fastFindReferenceWithParent()?
fastFindReferenceWithParent() is called by 1 function(s): rule.create.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free