paulkirth created this revision. Herald added a project: All. paulkirth requested review of this revision. Herald added a project: clang-tools-extra. Herald added a subscriber: cfe-commits.
Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D142564 Files: clang-tools-extra/clang-doc/Representation.cpp Index: clang-tools-extra/clang-doc/Representation.cpp =================================================================== --- clang-tools-extra/clang-doc/Representation.cpp +++ clang-tools-extra/clang-doc/Representation.cpp @@ -54,51 +54,15 @@ return -1; } -void reduceChildren(std::vector<Reference> &Children, - std::vector<Reference> &&ChildrenToMerge) { - for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { - Children.push_back(std::move(ChildToMerge)); - continue; - } - Children[mergeIdx].merge(std::move(ChildToMerge)); - } -} - -void reduceChildren(std::vector<FunctionInfo> &Children, - std::vector<FunctionInfo> &&ChildrenToMerge) { - for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { - Children.push_back(std::move(ChildToMerge)); - continue; - } - Children[mergeIdx].merge(std::move(ChildToMerge)); - } -} - -void reduceChildren(std::vector<EnumInfo> &Children, - std::vector<EnumInfo> &&ChildrenToMerge) { - for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { - Children.push_back(std::move(ChildToMerge)); - continue; - } - Children[mergeIdx].merge(std::move(ChildToMerge)); - } -} - -void reduceChildren(std::vector<TypedefInfo> &Children, - std::vector<TypedefInfo> &&ChildrenToMerge) { +template <typename T> +void reduceChildren(std::vector<T> &Children, std::vector<T> &&ChildrenToMerge){ for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { + int MergeIdx = getChildIndexIfExists(Children, ChildToMerge); + if (MergeIdx == -1) { Children.push_back(std::move(ChildToMerge)); continue; } - Children[mergeIdx].merge(std::move(ChildToMerge)); + Children[MergeIdx].merge(std::move(ChildToMerge)); } }
Index: clang-tools-extra/clang-doc/Representation.cpp =================================================================== --- clang-tools-extra/clang-doc/Representation.cpp +++ clang-tools-extra/clang-doc/Representation.cpp @@ -54,51 +54,15 @@ return -1; } -void reduceChildren(std::vector<Reference> &Children, - std::vector<Reference> &&ChildrenToMerge) { - for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { - Children.push_back(std::move(ChildToMerge)); - continue; - } - Children[mergeIdx].merge(std::move(ChildToMerge)); - } -} - -void reduceChildren(std::vector<FunctionInfo> &Children, - std::vector<FunctionInfo> &&ChildrenToMerge) { - for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { - Children.push_back(std::move(ChildToMerge)); - continue; - } - Children[mergeIdx].merge(std::move(ChildToMerge)); - } -} - -void reduceChildren(std::vector<EnumInfo> &Children, - std::vector<EnumInfo> &&ChildrenToMerge) { - for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { - Children.push_back(std::move(ChildToMerge)); - continue; - } - Children[mergeIdx].merge(std::move(ChildToMerge)); - } -} - -void reduceChildren(std::vector<TypedefInfo> &Children, - std::vector<TypedefInfo> &&ChildrenToMerge) { +template <typename T> +void reduceChildren(std::vector<T> &Children, std::vector<T> &&ChildrenToMerge){ for (auto &ChildToMerge : ChildrenToMerge) { - int mergeIdx = getChildIndexIfExists(Children, ChildToMerge); - if (mergeIdx == -1) { + int MergeIdx = getChildIndexIfExists(Children, ChildToMerge); + if (MergeIdx == -1) { Children.push_back(std::move(ChildToMerge)); continue; } - Children[mergeIdx].merge(std::move(ChildToMerge)); + Children[MergeIdx].merge(std::move(ChildToMerge)); } }
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits