Lines Matching defs:Mapping
270 std::pair<const syntax::Token *, const TokenBuffer::Mapping *>
284 auto It = llvm::partition_point(File.Mappings, [&](const Mapping &M) {
291 /*Mapping=*/nullptr};
297 return {&File.SpelledTokens[It->BeginSpelled], /*Mapping=*/&*It};
303 /*Mapping=*/nullptr};
306 const TokenBuffer::Mapping *
313 auto It = llvm::partition_point(F.Mappings, [SpelledI](const Mapping &M) {
397 std::string TokenBuffer::Mapping::str() const {
411 // Mapping an empty range is ambiguous in case of empty mappings at either end
428 // Mapping. We must use the general (SourceManager-based) algorithm.
462 const Mapping &M) const {
496 auto M = llvm::partition_point(File.Mappings, [&](const Mapping &M) {
513 auto M = llvm::partition_point(File.Mappings, [&](const Mapping &M) {
567 for (auto Mapping : File.Mappings) {
568 const syntax::Token *Token = &Spelled[Mapping.BeginSpelled];
745 assert(llvm::is_sorted(mappings, [](const TokenBuffer::Mapping &M1,
746 const TokenBuffer::Mapping &M2) {
772 TokenBuffer::Mapping Mapping;
773 Mapping.BeginSpelled = NextSpelled;
776 Mapping.BeginExpanded = Mapping.EndExpanded =
781 Mapping.EndSpelled = NextSpelled;
782 if (Mapping.BeginSpelled != Mapping.EndSpelled)
783 Result.Files[File].Mappings.push_back(Mapping);
784 Mapping.BeginSpelled = NextSpelled;
833 // Mapping starts here...
834 TokenBuffer::Mapping Mapping;
835 Mapping.BeginExpanded = NextExpanded;
836 Mapping.BeginSpelled = NextSpelled;
847 Mapping.EndExpanded = NextExpanded;
848 Mapping.EndSpelled = NextSpelled;
849 Result.Files[File].Mappings.push_back(Mapping);