[PATCH] D27784: Add a class ASTRecordReader which wraps an ASTReader, a RecordData, and ModuleFile.

David L. Jones via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 14 16:07:57 PST 2016


dlj created this revision.
dlj added a reviewer: rsmith.
dlj added a subscriber: cfe-commits.

When reading an ASTRecord, each RecordData is logically contained within a
single ModuleFile, and global(er) state is contained by a single ASTReader. This
means that any operations that read from a RecordData and reference an ASTReader
or a ModuleFile, will always reference the same ASTReader or ModuleFile.
ASTRecordReader groups these together so that parameters don't need to be
duplicated ad infinitum. Most uses of the Idx variable seem to be redunant
aliases as well, but I'll leave that for now.


https://reviews.llvm.org/D27784

Files:
  include/clang/Serialization/ASTReader.h
  lib/Serialization/ASTReader.cpp
  lib/Serialization/ASTReaderDecl.cpp
  lib/Serialization/ASTReaderStmt.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D27784.81492.patch
Type: text/x-patch
Size: 210882 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20161215/cd58e6ad/attachment-0001.bin>


More information about the cfe-commits mailing list