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
  06fee7d4_f38c_cb80_f7c8_47dea21e6cb4["createWriteFunction()"]
  8fc1e361_2499_d43c_4026_dc6b2b43c02b["createBasicRenderer()"]
  8fc1e361_2499_d43c_4026_dc6b2b43c02b -->|calls| 06fee7d4_f38c_cb80_f7c8_47dea21e6cb4
  026cfe7c_3b65_a277_dd1c_866e5ce8b6df["createRenderer()"]
  026cfe7c_3b65_a277_dd1c_866e5ce8b6df -->|calls| 06fee7d4_f38c_cb80_f7c8_47dea21e6cb4
  bb9fa80c_9fff_e8c5_332c_e3cfefd6515f["constructor()"]
  bb9fa80c_9fff_e8c5_332c_e3cfefd6515f -->|calls| 06fee7d4_f38c_cb80_f7c8_47dea21e6cb4
  style 06fee7d4_f38c_cb80_f7c8_47dea21e6cb4 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