func write()

in Sources/SwiftSyntax/RawSyntax.swift [464:484]


  func write<Target>(
    to target: inout Target
  ) where Target: TextOutputStream {
    if hasCustomText {
      // Fast path, we recorded the full token text, including trivia.
      // FIXME: A way to print the buffer directly and avoid the copy ?
      target.write(String.fromBuffer(fullTextBuffer))
    } else {
      func printTrivia(_ buf: UnsafeBufferPointer<CTriviaPiece>) {
        for cpiece in buf {
          let newPiece = TriviaPiece.fromRawValue(cpiece, textBuffer: emptyStringBuffer)
          newPiece.write(to: &target)
        }
      }
      printTrivia(leadingTriviaBuffer)
      let tokKind = TokenKind.fromRawValue(kind: tokenKind,
        textBuffer: emptyStringBuffer)
      target.write(tokKind.text)
      printTrivia(trailingTriviaBuffer)
    }
  }