//===-- llvm/Support/FormattedStream.cpp - Formatted streams ----*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file contains the implementation of formatted_raw_ostream. // //===----------------------------------------------------------------------===// #include "llvm/Support/FormattedStream.h" #include "llvm/Support/ConvertUTF.h" #include "llvm/Support/Debug.h" #include "llvm/Support/Unicode.h" #include "llvm/Support/raw_ostream.h" #include <algorithm> usingnamespacellvm; /// UpdatePosition - Examine the given char sequence and figure out which /// column we end up in after output, and how many line breaks are contained. /// This assumes that the input string is well-formed UTF-8, and takes into /// account Unicode characters which render as multiple columns wide. void formatted_raw_ostream::UpdatePosition(const char *Ptr, size_t Size) { … } /// ComputePosition - Examine the current output and update line and column /// counts. void formatted_raw_ostream::ComputePosition(const char *Ptr, size_t Size) { … } /// PadToColumn - Align the output to some column number. /// /// \param NewCol - The column to move to. /// formatted_raw_ostream &formatted_raw_ostream::PadToColumn(unsigned NewCol) { … } void formatted_raw_ostream::write_impl(const char *Ptr, size_t Size) { … } /// fouts() - This returns a reference to a formatted_raw_ostream for /// standard output. Use it like: fouts() << "foo" << "bar"; formatted_raw_ostream &llvm::fouts() { … } /// ferrs() - This returns a reference to a formatted_raw_ostream for /// standard error. Use it like: ferrs() << "foo" << "bar"; formatted_raw_ostream &llvm::ferrs() { … } /// fdbgs() - This returns a reference to a formatted_raw_ostream for /// the debug stream. Use it like: fdbgs() << "foo" << "bar"; formatted_raw_ostream &llvm::fdbgs() { … }