[PATCH] D43341: [clang-doc] Implement reducer portion of the frontend framework

Julie Hockett via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 15 10:16:54 PST 2018


juliehockett created this revision.
juliehockett added reviewers: klimek, sammccall, jakehehrlich.
juliehockett added a project: clang-tools-extra.
Herald added a subscriber: mgorny.
juliehockett added a dependency: D41102: Setup clang-doc frontend framework.

Implements a simple, in-memory reducer for the mapped output of the initial tool. This creates a collection object for storing the deduplicated infos on each declaration, and populates that from the mapper output. The collection object is serialized to LLVM bitstream. On reading each serialized output, it checks to see if a merge is necessary and if so, merges the new info with the existing info (prefering the existing one if conflicts exist).

For a more detailed overview of the tool, see the design document on the mailing list: RFC: clang-doc proposal <http://lists.llvm.org/pipermail/cfe-dev/2017-December/056203.html>


https://reviews.llvm.org/D43341

Files:
  clang-doc/CMakeLists.txt
  clang-doc/ClangDocBinary.cpp
  clang-doc/ClangDocBinary.h
  clang-doc/ClangDocMapper.cpp
  clang-doc/ClangDocMapper.h
  clang-doc/ClangDocReducer.cpp
  clang-doc/ClangDocReducer.h
  clang-doc/ClangDocRepresentation.cpp
  clang-doc/ClangDocRepresentation.h
  clang-doc/tool/ClangDocMain.cpp
  test/clang-doc/mapper-namespace.cpp
  test/clang-doc/mapper-type.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D43341.134451.patch
Type: text/x-patch
Size: 61764 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180215/1bd23e53/attachment-0001.bin>


More information about the cfe-commits mailing list