Home / Function/ canNeverBeRef() — vue Function Reference

canNeverBeRef() — vue Function Reference

Architecture documentation for the canNeverBeRef() function in compileScript.ts from the vue codebase.

Entity Profile

Dependency Diagram

graph TD
  745effd8_5d53_dcf6_b556_882cf7b4120c["canNeverBeRef()"]
  4ae6f599_c6d3_5f0e_3efb_3633ef6e68c0["walkDeclaration()"]
  4ae6f599_c6d3_5f0e_3efb_3633ef6e68c0 -->|calls| 745effd8_5d53_dcf6_b556_882cf7b4120c
  c9c376a2_8768_e10f_0236_eb868edd143f["isCallOf()"]
  745effd8_5d53_dcf6_b556_882cf7b4120c -->|calls| c9c376a2_8768_e10f_0236_eb868edd143f
  style 745effd8_5d53_dcf6_b556_882cf7b4120c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/compiler-sfc/src/compileScript.ts lines 1630–1656

function canNeverBeRef(node: Node, userReactiveImport: string): boolean {
  if (isCallOf(node, userReactiveImport)) {
    return true
  }
  switch (node.type) {
    case 'UnaryExpression':
    case 'BinaryExpression':
    case 'ArrayExpression':
    case 'ObjectExpression':
    case 'FunctionExpression':
    case 'ArrowFunctionExpression':
    case 'UpdateExpression':
    case 'ClassExpression':
    case 'TaggedTemplateExpression':
      return true
    case 'SequenceExpression':
      return canNeverBeRef(
        node.expressions[node.expressions.length - 1],
        userReactiveImport
      )
    default:
      if (node.type.endsWith('Literal')) {
        return true
      }
      return false
  }
}

Domain

Subdomains

Calls

Called By

Frequently Asked Questions

What does canNeverBeRef() do?
canNeverBeRef() is a function in the vue codebase.
What does canNeverBeRef() call?
canNeverBeRef() calls 1 function(s): isCallOf.
What calls canNeverBeRef()?
canNeverBeRef() is called by 1 function(s): walkDeclaration.

Analyze Your Own Codebase

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

Try Supermodel Free