reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/Format/ContinuationIndenter.cpp
  116   return Tok.isMemberAccess() && Tok.Previous && Tok.Previous->closesScope();
  116   return Tok.isMemberAccess() && Tok.Previous && Tok.Previous->closesScope();
  122   const FormatToken &Previous = *Current.Previous;
  143            (LessTok.Previous && LessTok.Previous->is(tok::equal))));
  143            (LessTok.Previous && LessTok.Previous->is(tok::equal))));
  279   const FormatToken &Previous = *Current.Previous;
  280   assert(&Previous == Current.Previous);
  288       Previous.Previous &&
  289       Previous.Previous->isOneOf(tok::l_brace, tok::l_paren, tok::comma))
  331   const FormatToken &Previous = *Current.Previous;
  443                         Previous.Previous &&
  444                         Previous.Previous->isNot(TT_BinaryOperator); // For >>.
  446         Previous.Previous && Previous.Previous->EndsBinaryExpression;
  446         Previous.Previous && Previous.Previous->EndsBinaryExpression;
  515        (Current.Previous->Tok.getIdentifierInfo() == nullptr ||
  516         Current.Previous->Tok.getIdentifierInfo()->getPPKeywordID() ==
  546   const FormatToken &Previous = *State.NextToken->Previous;
  557       Tok = Tok->Previous;
  616       (!Previous.Previous || !Previous.Previous->isOneOf(
  616       (!Previous.Previous || !Previous.Previous->isOneOf(
  683       Previous.Previous &&
  684       (Previous.Previous->is(tok::kw_for) || Previous.Previous->isIf())) {
  684       (Previous.Previous->is(tok::kw_for) || Previous.Previous->isIf())) {
  733   const FormatToken &Previous = *State.NextToken->Previous;
  918   if (!State.NextToken || !State.NextToken->Previous)
  921   const FormatToken &Previous = *Current.Previous;
 1099   if (Current.is(TT_ConditionalExpr) && Current.Previous &&
 1100       !Current.Previous->is(TT_ConditionalExpr))
 1108     const FormatToken *Previous = Current.Previous;
 1110       Previous = Previous->Previous;
 1332                        Current.MatchingParen->Previous &&
 1333                        Current.MatchingParen->Previous->is(tok::comma);
 1423       Current.is(TT_ArrayInitializerLSquare) && Current.Previous &&
 1424       Current.Previous->is(tok::at);
 1452       Current.MatchingParen->Previous) {
 1453     const FormatToken &CurrentScopeOpener = *Current.MatchingParen->Previous;
 1821         Current, StartColumn, Current.OriginalColumn, !Current.Previous,
 1824              (Current.Previous == nullptr ||
 1825               Current.Previous->isNot(TT_ImplicitStringLiteral))) {
 1831         Current, StartColumn, Current.OriginalColumn, !Current.Previous,
tools/clang/lib/Format/Format.cpp
 1383           if (Tok->is(tok::coloncolon) && Tok->Previous->is(TT_TemplateOpener))
 1386               Tok->Previous->is(TT_TemplateCloser))
 1774         if ((FormatTok->Previous && FormatTok->Previous->is(tok::at) &&
 1774         if ((FormatTok->Previous && FormatTok->Previous->is(tok::at) &&
tools/clang/lib/Format/FormatToken.cpp
   77   if (State.NextToken == nullptr || !State.NextToken->Previous)
   85       State.NextToken->Previous->getPreviousNonComment();
   94       Style.ColumnLimit - State.Column + State.NextToken->Previous->ColumnWidth;
  114     if (Item < Commas.size() && State.NextToken->Previous == Commas[Item]) {
  200           !ItemEnd->Previous->isTrailingComment()) {
  207         ItemEnd = Token->MatchingParen->Previous;
tools/clang/lib/Format/FormatToken.h
  339       return Previous->closesScopeAfterBlock();
  488     FormatToken *Tok = Previous;
  490       Tok = Tok->Previous;
  569     if (is(tok::comment) && Previous)
  570       return Previous->endsSequenceInternal(K1);
  576     if (is(tok::comment) && Previous)
  577       return Previous->endsSequenceInternal(K1, Tokens...);
  578     return is(K1) && Previous && Previous->endsSequenceInternal(Tokens...);
  578     return is(K1) && Previous && Previous->endsSequenceInternal(Tokens...);
tools/clang/lib/Format/TokenAnnotator.cpp
   48   if (Left->Previous && Left->Previous->is(tok::greater) &&
   48   if (Left->Previous && Left->Previous->is(tok::greater) &&
   49       Left->Previous->MatchingParen &&
   50       Left->Previous->MatchingParen->is(TT_TemplateOpener))
   51     Left = Left->Previous->MatchingParen;
   54   return Left->Previous && Left->Previous->is(tok::r_square) &&
   54   return Left->Previous && Left->Previous->is(tok::r_square) &&
   55          Left->Previous->MatchingParen &&
   56          Left->Previous->MatchingParen->is(TT_LambdaLSquare);
   76     if (!CurrentToken || !CurrentToken->Previous)
   78     if (NonTemplateLess.count(CurrentToken->Previous))
   81     const FormatToken &Previous = *CurrentToken->Previous; // The '<'.
   82     if (Previous.Previous) {
   83       if (Previous.Previous->Tok.isLiteral())
   85       if (Previous.Previous->is(tok::r_paren) && Contexts.size() > 1 &&
   86           (!Previous.Previous->MatchingParen ||
   87            !Previous.Previous->MatchingParen->is(TT_OverloadedOperatorLParen)))
   91     FormatToken *Left = CurrentToken->Previous;
  103         Left->Previous && Left->Previous->Tok.isNot(tok::kw_template);
  103         Left->Previous && Left->Previous->Tok.isNot(tok::kw_template);
  119             (Style.Language == FormatStyle::LK_Proto && Left->Previous &&
  120              Left->Previous->isOneOf(TT_SelectorName, TT_DictLiteral)))
  143       if (CurrentToken->Previous->isOneOf(tok::pipepipe, tok::ampamp) &&
  144           CurrentToken->Previous->is(TT_BinaryOperator) &&
  166     FormatToken *Left = CurrentToken->Previous;
  175     if (FormatToken *MaybeSel = Left->Previous) {
  177       if (MaybeSel->isObjCAtKeyword(tok::objc_selector) && MaybeSel->Previous &&
  178           MaybeSel->Previous->is(tok::at)) {
  192     } else if (Left->Previous &&
  193                (Left->Previous->isOneOf(tok::kw_static_assert, tok::kw_decltype,
  196                 Left->Previous->isIf() ||
  197                 Left->Previous->is(TT_BinaryOperator))) {
  200     } else if (Style.Language == FormatStyle::LK_JavaScript && Left->Previous &&
  201                (Left->Previous->is(Keywords.kw_function) ||
  202                 (Left->Previous->endsSequence(tok::identifier,
  206     } else if (Style.Language == FormatStyle::LK_JavaScript && Left->Previous &&
  207                Left->Previous->is(TT_JsTypeColon)) {
  214                (!Left->Previous || !Left->Previous->is(tok::identifier))) {
  214                (!Left->Previous || !Left->Previous->is(tok::identifier))) {
  219     } else if (Left->Previous && Left->Previous->is(tok::kw___attribute)) {
  219     } else if (Left->Previous && Left->Previous->is(tok::kw___attribute)) {
  221     } else if (Left->Previous && Left->Previous->is(TT_ForEachMacro)) {
  221     } else if (Left->Previous && Left->Previous->is(TT_ForEachMacro)) {
  225     } else if (Left->Previous && Left->Previous->MatchingParen &&
  225     } else if (Left->Previous && Left->Previous->MatchingParen &&
  226                Left->Previous->MatchingParen->is(TT_ObjCBlockLParen)) {
  230           Left->Previous && Left->Previous->isOneOf(tok::kw_for, tok::kw_catch);
  230           Left->Previous && Left->Previous->isOneOf(tok::kw_for, tok::kw_catch);
  252         Left->Previous && Left->Previous->is(tok::kw_for);
  252         Left->Previous && Left->Previous->is(tok::kw_for);
  273       if (CurrentToken->Previous->is(TT_PointerOrReference) &&
  274           CurrentToken->Previous->Previous->isOneOf(tok::l_paren,
  274           CurrentToken->Previous->Previous->isOneOf(tok::l_paren,
  279       if (CurrentToken->Previous->is(TT_BinaryOperator))
  291             Left->Previous && Left->Previous->is(tok::l_paren)) {
  291             Left->Previous && Left->Previous->is(tok::l_paren)) {
  312         if (Left->Previous && Left->Previous->is(TT_JavaAnnotation))
  312         if (Left->Previous && Left->Previous->is(TT_JavaAnnotation))
  314         if (Left->Previous && Left->Previous->is(TT_LeadingJavaAnnotation))
  314         if (Left->Previous && Left->Previous->is(TT_LeadingJavaAnnotation))
  316         if (Left->Previous && Left->Previous->is(TT_AttributeSquare))
  316         if (Left->Previous && Left->Previous->is(TT_AttributeSquare))
  338       if ((CurrentToken->Previous->isOneOf(tok::kw_const, tok::kw_auto) ||
  339            CurrentToken->Previous->isSimpleTypeSpecifier()) &&
  412     if (Tok.Previous && Tok.Previous->is(tok::at)) {
  412     if (Tok.Previous && Tok.Previous->is(tok::at)) {
  447     FormatToken *Left = CurrentToken->Previous;
  572                   (CurrentToken->Previous &&
  573                    CurrentToken->Previous->Previous == Left)) &&
  573                    CurrentToken->Previous->Previous == Left)) &&
  582         if (StartsObjCMethodExpr && CurrentToken->Previous != Left) {
  586           if (!ColonFound && CurrentToken->Previous &&
  587               CurrentToken->Previous->is(TT_Unknown) &&
  588               canBeObjCSelectorComponent(*CurrentToken->Previous))
  589             CurrentToken->Previous->Type = TT_SelectorName;
  658       FormatToken *Left = CurrentToken->Previous;
  669       if (Style.Language == FormatStyle::LK_JavaScript && Left->Previous &&
  670           Left->Previous->is(TT_JsTypeColon))
  746         CurrentToken->Previous->ClosesTemplateDeclaration = true;
  758       if (!Tok->Previous && Line.MustBeDeclaration)
  762       if (!Tok->Previous)
  791         const FormatToken *BeforePrevious = Tok->Previous->Previous;
  791         const FormatToken *BeforePrevious = Tok->Previous->Previous;
  796             Tok->Previous->is(tok::identifier) && Tok->Previous->is(TT_Unknown);
  796             Tok->Previous->is(tok::identifier) && Tok->Previous->is(TT_Unknown);
  805           Tok->Previous->Type = TT_SelectorName;
  807             Contexts.back().FirstObjCSelectorName = Tok->Previous;
  808           else if (Tok->Previous->ColumnWidth >
  811                 Tok->Previous->ColumnWidth;
  812           Tok->Previous->ParameterIndex =
  827       } else if (canBeObjCSelectorComponent(*Tok->Previous) && Tok->Next &&
  860         if ((Tok->Previous && Tok->Previous->is(tok::period)) ||
  860         if ((Tok->Previous && Tok->Previous->is(tok::period)) ||
  877       if (Tok->Previous && Tok->Previous->is(tok::r_paren) &&
  877       if (Tok->Previous && Tok->Previous->is(tok::r_paren) &&
  878           Tok->Previous->MatchingParen &&
  879           Tok->Previous->MatchingParen->is(TT_OverloadedOperatorLParen)) {
  880         Tok->Previous->Type = TT_OverloadedOperator;
  881         Tok->Previous->MatchingParen->Type = TT_OverloadedOperator;
  889           (!Tok->Previous ||
  890            !Tok->Previous->isOneOf(tok::kw_decltype, tok::kw___attribute,
  916             (Style.Language == FormatStyle::LK_Proto && Tok->Previous &&
  917              Tok->Previous->isOneOf(TT_SelectorName, TT_DictLiteral))) {
  935       if (Tok->Previous)
  941       if (Tok->Previous && Tok->Previous->is(TT_TemplateCloser))
  941       if (Tok->Previous && Tok->Previous->is(TT_TemplateCloser))
  954             CurrentToken->Previous->isOneOf(TT_BinaryOperator, TT_UnaryOperator,
  956           CurrentToken->Previous->Type = TT_OverloadedOperator;
  960         if (CurrentToken->Previous->is(TT_BinaryOperator))
  961           CurrentToken->Previous->Type = TT_OverloadedOperator;
 1043         if (IsMark || CurrentToken->Previous->is(TT_BinaryOperator))
 1303         (!Current.Previous || Current.Previous->isNot(tok::kw_operator))) {
 1303         (!Current.Previous || Current.Previous->isNot(tok::kw_operator))) {
 1306         for (FormatToken *Previous = Current.Previous;
 1307              Previous && Previous->Previous &&
 1308              !Previous->Previous->isOneOf(tok::comma, tok::semi);
 1309              Previous = Previous->Previous) {
 1319               Previous->Previous && Previous->Previous->isNot(tok::equal))
 1319               Previous->Previous && Previous->Previous->isNot(tok::equal))
 1324                (!Current.Previous || !Current.Previous->is(tok::kw_operator))) {
 1324                (!Current.Previous || !Current.Previous->is(tok::kw_operator))) {
 1332     } else if (Current.Previous &&
 1333                Current.Previous->is(TT_CtorInitializerColon)) {
 1336     } else if (Current.Previous && Current.Previous->is(TT_InheritanceColon)) {
 1336     } else if (Current.Previous && Current.Previous->is(TT_InheritanceColon)) {
 1339       for (FormatToken *Previous = Current.Previous;
 1341            Previous = Previous->Previous)
 1360         if (Current.Previous &&
 1361             (Current.Previous->isOneOf(tok::identifier, tok::kw_namespace,
 1364              Current.Previous->Tok.isLiteral())) {
 1397                !Current.Previous->is(tok::kw_operator)) {
 1423                (!Current.Previous || Current.Previous->isNot(tok::l_square)) &&
 1423                (!Current.Previous || Current.Previous->isNot(tok::l_square)) &&
 1449             if (FormatToken *BeforeParen = Current.MatchingParen->Previous)
 1453                   (!BeforeParen->Previous ||
 1454                    BeforeParen->Previous->ClosesTemplateDeclaration))
 1480       else if (Style.Language == FormatStyle::LK_Java && Current.Previous &&
 1481                Current.Previous->isOneOf(TT_JavaAnnotation,
 1483         Current.Type = Current.Previous->Type;
 1488                Current.Previous && Current.Previous->is(TT_CastRParen) &&
 1488                Current.Previous && Current.Previous->is(TT_CastRParen) &&
 1489                Current.Previous->MatchingParen &&
 1490                Current.Previous->MatchingParen->Previous &&
 1490                Current.Previous->MatchingParen->Previous &&
 1491                Current.Previous->MatchingParen->Previous->is(
 1491                Current.Previous->MatchingParen->Previous->is(
 1499                Current.Previous &&
 1500                !Current.Previous->isOneOf(tok::equal, tok::at) &&
 1507                Current.Previous) {
 1508       if (Current.Previous->is(tok::at) &&
 1510         const FormatToken &AtToken = *Current.Previous;
 1516       } else if (Current.Previous->is(tok::period) &&
 1517                  Current.Previous->isOneOf(TT_JavaAnnotation,
 1519         Current.Type = Current.Previous->Type;
 1530     if (Tok.isNot(tok::identifier) || !Tok.Previous)
 1533     if (Tok.Previous->isOneOf(TT_LeadingJavaAnnotation, Keywords.kw_instanceof,
 1537         Tok.Previous->is(Keywords.kw_in))
 1549                        PreviousNotConst->Previous &&
 1550                        PreviousNotConst->Previous->is(tok::hash);
 1554              PreviousNotConst->MatchingParen->Previous &&
 1555              PreviousNotConst->MatchingParen->Previous->isNot(tok::period) &&
 1556              PreviousNotConst->MatchingParen->Previous->isNot(tok::kw_template);
 1559         PreviousNotConst->MatchingParen->Previous &&
 1560         PreviousNotConst->MatchingParen->Previous->is(tok::kw_decltype))
 1576     if (Tok.Previous == Tok.MatchingParen || !Tok.Next || !Tok.MatchingParen)
 1585             !LeftOfParens->MatchingParen->Previous)
 1587         LeftOfParens = LeftOfParens->MatchingParen->Previous;
 1628         !Tok.Previous ||
 1629         Tok.Previous->isOneOf(TT_PointerOrReference, TT_TemplateCloser) ||
 1630         Tok.Previous->isSimpleTypeSpecifier();
 1666     for (FormatToken *Prev = Tok.Previous; Prev != Tok.MatchingParen;
 1667          Prev = Prev->Previous) {
 1945       FormatToken *Previous = Current->Previous;
 1946       while (Previous->is(tok::comment) && Previous->Previous)
 1947         Previous = Previous->Previous;
 2104     if (Current.Previous && Current.Previous->is(tok::coloncolon))
 2104     if (Current.Previous && Current.Previous->is(tok::coloncolon))
 2198       if (Current->Previous->BlockKind == BK_BracedInit &&
 2199           Current->Previous->opensScope())
 2213         for (FormatToken *Parameter = Current->Previous; Parameter;
 2214              Parameter = Parameter->Previous) {
 2217           if (Parameter->Previous && Parameter->Previous->is(tok::comma)) {
 2217           if (Parameter->Previous && Parameter->Previous->is(tok::comma)) {
 2218             if (!Parameter->Previous->is(TT_CtorInitializerComma) &&
 2240     if (Current->Previous->Children.size() == 1) {
 2241       FormatToken &LastOfChild = *Current->Previous->Children[0]->Last;
 2245     const FormatToken *Prev = Current->Previous;
 2309     Current = Current->Previous;
 2316   const FormatToken &Left = *Tok.Previous;
 2408     return !Right.NextOperator || !Right.NextOperator->Previous->closesScope()
 2442   if (Line.Type == LT_ObjCDecl && Left.is(tok::l_paren) && Left.Previous &&
 2443       Left.Previous->isOneOf(tok::identifier, tok::greater))
 2449   if (Left.is(tok::l_paren) && Left.Previous &&
 2450       (Left.Previous->is(tok::kw_for) || Left.Previous->isIf()))
 2450       (Left.Previous->is(tok::kw_for) || Left.Previous->isIf()))
 2471   if (Left.isOneOf(tok::plus, tok::comma) && Left.Previous &&
 2472       Left.Previous->isLabelString() &&
 2567     return Left.Tok.isLiteral() || (Left.is(tok::identifier) && Left.Previous &&
 2568                                     Left.Previous->is(tok::kw_case));
 2603             Left.Previous &&
 2604             !Left.Previous->isOneOf(tok::l_paren, tok::coloncolon,
 2661               (!Left.Previous || Left.Previous->isNot(tok::period))))) ||
 2661               (!Left.Previous || Left.Previous->isNot(tok::period))))) ||
 2685       Left.MatchingParen->Previous &&
 2686       (Left.MatchingParen->Previous->is(tok::period) ||
 2687        Left.MatchingParen->Previous->is(tok::coloncolon)))
 2714   const FormatToken &Left = *Right.Previous;
 2760     if (Right.is(tok::l_paren) && Left.is(Keywords.kw_await) && Left.Previous &&
 2761         Left.Previous->is(tok::kw_for))
 2793       if (Left.Previous && Left.Previous->is(tok::period) &&
 2793       if (Left.Previous && Left.Previous->is(tok::period) &&
 2810          (Left.is(Keywords.kw_of) && Left.Previous &&
 2811           (Left.Previous->Tok.is(tok::identifier) ||
 2812            Left.Previous->isOneOf(tok::r_square, tok::r_brace)))) &&
 2813         (!Left.Previous || !Left.Previous->is(tok::period)))
 2813         (!Left.Previous || !Left.Previous->is(tok::period)))
 2815     if (Left.isOneOf(tok::kw_for, Keywords.kw_as) && Left.Previous &&
 2816         Left.Previous->is(tok::period) && Right.is(tok::l_paren))
 2821     if (Left.is(tok::kw_default) && Left.Previous &&
 2822         Left.Previous->is(tok::kw_export))
 2995   const FormatToken &Left = *Right.Previous;
 3001     if (Right.is(tok::string_literal) && Left.is(tok::plus) && Left.Previous &&
 3002         Left.Previous->is(tok::string_literal))
 3005         Left.Previous && Left.Previous->is(tok::equal) &&
 3005         Left.Previous && Left.Previous->is(tok::equal) &&
 3053       BeforeClosingBrace = Left.MatchingParen->Previous;
 3071   if (Right.Previous->IsUnterminatedLiteral)
 3074       Right.Previous->is(tok::string_literal) &&
 3077   if (Right.Previous->ClosesTemplateDeclaration &&
 3078       Right.Previous->MatchingParen &&
 3079       Right.Previous->MatchingParen->NestingLevel == 0 &&
 3099   if ((Right.Previous->is(tok::l_brace) ||
 3100        (Right.Previous->is(tok::less) && Right.Previous->Previous &&
 3100        (Right.Previous->is(tok::less) && Right.Previous->Previous &&
 3100        (Right.Previous->is(tok::less) && Right.Previous->Previous &&
 3101         Right.Previous->Previous->is(tok::equal))) &&
 3101         Right.Previous->Previous->is(tok::equal))) &&
 3182     if (Right.Previous && Right.Previous->is(tok::at))
 3182     if (Right.Previous && Right.Previous->is(tok::at))
 3264   const FormatToken &Left = *Right.Previous;
 3456   if (Left.is(tok::l_paren) && Left.Previous &&
 3457       (Left.Previous->isOneOf(TT_BinaryOperator, TT_CastRParen)))
tools/clang/lib/Format/TokenAnnotator.h
   53     First->Previous = nullptr;
   60       I->Tok->Previous = Current;
tools/clang/lib/Format/UnwrappedLineFormatter.cpp
  685     assert(!B.First->Previous);
  689     B.First->Previous = A.Last;
  765     FormatToken &Previous = *State.NextToken->Previous;
tools/clang/lib/Format/UnwrappedLineParser.cpp
  398   const FormatToken *PrevTok = Tok->Previous;
 1134     const FormatToken *Previous = FormatTok->Previous;
 1509   const FormatToken *Previous = FormatTok->Previous;
 2489   FormatTok->Previous = nullptr;
 2641   FormatTok->Previous = Previous;
tools/clang/lib/Format/WhitespaceManager.cpp
  485     if (Current->SpacesRequiredBefore == 0 || !Current->Previous)
  488     Current = Current->Previous;
  493       Current = Current->MatchingParen->Previous;
  500     if (!Current->Previous || !Current->Previous->is(tok::pp_define))
  500     if (!Current->Previous || !Current->Previous->is(tok::pp_define))