16 #ifndef LLVM_CLANG_LIB_FORMAT_CONTINUATIONINDENTER_H
17 #define LLVM_CLANG_LIB_FORMAT_CONTINUATIONINDENTER_H
22 #include "llvm/Support/Regex.h"
33 class WhitespaceManager;
43 bool BinPackInconclusiveFunctions);
67 unsigned ExtraSpaces = 0);
76 unsigned moveStateToNextToken(
LineState &State,
bool DryRun,
bool Newline);
79 void moveStatePastFakeLParens(
LineState &State,
bool Newline);
81 void moveStatePastFakeRParens(
LineState &State);
84 void moveStatePastScopeOpener(
LineState &State,
bool Newline);
86 void moveStatePastScopeCloser(
LineState &State);
88 void moveStateToNewBlock(
LineState &State);
109 void addTokenOnCurrentLine(
LineState &State,
bool DryRun,
110 unsigned ExtraSpaces);
119 unsigned addTokenOnNewLine(
LineState &State,
bool DryRun);
122 unsigned getNewLineColumn(
const LineState &State);
136 bool nextIsMultilineString(
const LineState &State);
143 bool BinPackInconclusiveFunctions;
144 llvm::Regex CommentPragmasRegex;
150 : Indent(Indent), IndentLevel(IndentLevel), LastSpace(LastSpace),
Contains functions for text encoding manipulation. Supports UTF-8, 8-bit encodings and escape sequenc...
This class handles loading and caching of source files into memory.