From: Kaelyn Takata Date: Thu, 20 Nov 2014 22:06:29 +0000 (+0000) Subject: Add a few small helper methods to the TypoCorrectionConsumer. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6fc91a9d5e7d151890c7fc344e1999b8b11f34c2;p=platform%2Fupstream%2Fllvm.git Add a few small helper methods to the TypoCorrectionConsumer. llvm-svn: 222461 --- diff --git a/clang/include/clang/Sema/SemaInternal.h b/clang/include/clang/Sema/SemaInternal.h index 321d936..045bacf2 100644 --- a/clang/include/clang/Sema/SemaInternal.h +++ b/clang/include/clang/Sema/SemaInternal.h @@ -162,6 +162,17 @@ public: : ValidatedCorrections[0]; // The empty correction. } + /// \brief Return the next typo correction like getNextCorrection, but keep + /// the internal state pointed to the current correction (i.e. the next time + /// getNextCorrection is called, it will return the same correction returned + /// by peekNextcorrection). + const TypoCorrection &peekNextCorrection() { + auto Current = CurrentTCIndex; + const TypoCorrection &TC = getNextCorrection(); + CurrentTCIndex = Current; + return TC; + } + /// \brief Reset the consumer's position in the stream of viable corrections /// (i.e. getNextCorrection() will return each of the previously returned /// corrections in order before returning any new corrections). @@ -179,6 +190,10 @@ public: ASTContext &getContext() const { return SemaRef.Context; } const LookupResult &getLookupResult() const { return Result; } + bool isAddressOfOperand() const { return CorrectionValidator->IsAddressOfOperand; } + const CXXScopeSpec *getSS() const { return SS.get(); } + Scope *getScope() const { return S; } + private: class NamespaceSpecifierSet { struct SpecifierInfo {