Home / Function/ createWriteFunction() — vue Function Reference

createWriteFunction() — vue Function Reference

Architecture documentation for the createWriteFunction() function in write.ts from the vue codebase.

Entity Profile

Dependency Diagram

graph TD
  952e7302_eb52_7258_f162_b5e4d278feb0["createWriteFunction()"]
  d6dd7b7e_a232_421d_e8db_105f7cff407c["createBasicRenderer()"]
  d6dd7b7e_a232_421d_e8db_105f7cff407c -->|calls| 952e7302_eb52_7258_f162_b5e4d278feb0
  0ef8eb2c_b0fb_7608_a58e_c6b068a0d511["createRenderer()"]
  0ef8eb2c_b0fb_7608_a58e_c6b068a0d511 -->|calls| 952e7302_eb52_7258_f162_b5e4d278feb0
  6c6ba38e_f41f_a474_9808_5ac6799942b2["constructor()"]
  6c6ba38e_f41f_a474_9808_5ac6799942b2 -->|calls| 952e7302_eb52_7258_f162_b5e4d278feb0
  style 952e7302_eb52_7258_f162_b5e4d278feb0 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/server-renderer/src/write.ts lines 21–51

export function createWriteFunction(
  write: (text: string, next: Function) => boolean,
  onError: Function
): Function {
  let stackDepth = 0
  const cachedWrite = (text, next) => {
    if (text && cachedWrite.caching) {
      cachedWrite.cacheBuffer[cachedWrite.cacheBuffer.length - 1] += text
    }
    const waitForNext = write(text, next)
    if (waitForNext !== true) {
      if (stackDepth >= MAX_STACK_DEPTH) {
        defer(() => {
          try {
            next()
          } catch (e: any) {
            onError(e)
          }
        })
      } else {
        stackDepth++
        next()
        stackDepth--
      }
    }
  }
  cachedWrite.caching = false
  cachedWrite.cacheBuffer = []
  cachedWrite.componentBuffer = []
  return cachedWrite
}

Subdomains

Frequently Asked Questions

What does createWriteFunction() do?
createWriteFunction() is a function in the vue codebase.
What calls createWriteFunction()?
createWriteFunction() is called by 3 function(s): constructor, createBasicRenderer, createRenderer.

Analyze Your Own Codebase

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

Try Supermodel Free