Directly Include Referenced Files

This feature helps to automatically add include directives to a file under consideration, so that all files containing referenced declarations get included (directly). The features is based on the idea of John Lakos found in his book Large-Scale C++ Software Design (5th guidline)


  /* main.cpp */
#include "Y.h" 
int main() {
  X x;
  return 0;
  /* Y.h */
#include "X.h" 
/* more code */
  /* X.h */
class X { };
/* ... */

Here, the Includator makes the proposal to include file X.h directly into main.cpp independent of other, used or unused, types in Y.h.