sammccall added inline comments.

================
Comment at: clang-tools-extra/clangd/SourceCode.cpp:313
 
 SourceLocation getBeginningOfIdentifier(const Position &Pos,
                                         const SourceManager &SM,
----------------
sammccall wrote:
> sammccall wrote:
> > @kadircet is working on getting rid of this function because creating raw 
> > lexers is is wasteful and not actually very powerful. Mostly we're moving 
> > to syntax::TokenBuffer, which records actual lexed tokens, but that doesn't 
> > apply here.
> > 
> > The examples in the tests seem like they'd be covered by something *really* 
> > simple, like enclosing identifier chars:
> > 
> > ```
> > unsigned Begin, End;
> > for (Begin = Offset; Begin > 0 && isIdentifierBody(Code[Begin-1]); 
> > --BeginEnd) {}
> > for (End = Offset; End < Code.size() && isIdentifierBody(Code[End]); ++End) 
> > {}
> > return Code.slice(Begin, End);
> > ```
> > 
> > (Lexer::isIdentifierBodyChar requires langopts but just passes through 
> > DollarIdents to isIdentifierBody, and I don't think we care much about 
> > identifiers with $ in them.)
> > 
> > If we really want to do something more subtle here, we should check it in 
> > SourceCodeTests.
> > Mostly we're moving to syntax::TokenBuffer, which records actual lexed 
> > tokens, but that doesn't apply here.
> 
> Oops, this isn't true - token buffer's expanded token stream has "real" 
> tokens, but the spelled token streams use the raw lexer. You can just use 
> spelledIdentifierTouching(), I think.
> You can just use spelledIdentifierTouching(), I think.
Sorry disregard this, obviously it doesn't work in comments etc. Need more 
coffee...


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D72874/new/

https://reviews.llvm.org/D72874



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to