<commit_before>//--------------------------------------------------------------------*- C++ -*-
// CLING - the C++ LLVM-based InterpreterG :)
// author:  <NAME>  <<EMAIL>>
// author:  <NAME> <<EMAIL>>
//
// This file is dual-licensed: you can choose to license it under the University
// of Illinois Open Source License or the GNU Lesser General Public License. See
// LICENSE.TXT for details.
//------------------------------------------------------------------------------

#ifndef CLING_AUTOLOAD_CALLBACK_H
#define CLING_AUTOLOAD_CALLBACK_H

#include "cling/Interpreter/InterpreterCallbacks.h"

#include "llvm/ADT/DenseMap.h"

namespace clang {
  class Decl;
  class ClassTemplateDecl;
  class NamespaceDecl;
  class FunctionDecl;
}

namespace cling {
  class Interpreter;
  class Transaction;
}

namespace cling {
  class AutoloadCallback : public cling::InterpreterCallbacks {
  public:
    AutoloadCallback(cling::Interpreter* interp)
      : InterpreterCallbacks(interp) { }
    ~AutoloadCallback();
    using cling::InterpreterCallbacks::LookupObject;
      //^to get rid of bogus warning : "-Woverloaded-virtual"
      //virtual functions ARE meant to be overriden!

//    bool LookupObject (clang::LookupResult &R, clang::Scope *);
    bool LookupObject (clang::TagDecl* t);

    void InclusionDirective(clang::SourceLocation HashLoc,
                            const clang::Token &IncludeTok,
                            llvm::StringRef FileName,
                            bool IsAngled,
                            clang::CharSourceRange FilenameRange,
                            const clang::FileEntry *File,
                            llvm::StringRef SearchPath,
                            llvm::StringRef RelativePath,
                            const clang::Module *Imported);
    void TransactionCommitted(const Transaction& T);

    typedef llvm::DenseMap<const clang::FileEntry*, std::vector<clang::Decl*> > FwdDeclsMap;
  private:
    // The key is the Unique File ID obtained from the source manager.
    FwdDeclsMap m_Map;

    Interpreter* m_Interpreter;
//    AutoloadingStateInfo m_State;

    void report(clang::SourceLocation l, std::string name,std::string header);
  };
} // end namespace cling

#endif // CLING_AUTOLOAD_CALLBACK_H

<commit_msg>Remove the member, we inherit it.<commit_after>//--------------------------------------------------------------------*- C++ -*-
// CLING - the C++ LLVM-based InterpreterG :)
// author:  <NAME>  <<EMAIL>>
// author:  <NAME> <<EMAIL>>
//
// This file is dual-licensed: you can choose to license it under the University
// of Illinois Open Source License or the GNU Lesser General Public License. See
// LICENSE.TXT for details.
//------------------------------------------------------------------------------

#ifndef CLING_AUTOLOAD_CALLBACK_H
#define CLING_AUTOLOAD_CALLBACK_H

#include "cling/Interpreter/InterpreterCallbacks.h"

#include "llvm/ADT/DenseMap.h"

namespace clang {
  class Decl;
  class ClassTemplateDecl;
  class NamespaceDecl;
  class FunctionDecl;
}

namespace cling {
  class Interpreter;
  class Transaction;
}

namespace cling {
  class AutoloadCallback : public cling::InterpreterCallbacks {
  public:
    AutoloadCallback(cling::Interpreter* interp)
      : InterpreterCallbacks(interp) { }
    ~AutoloadCallback();
    using cling::InterpreterCallbacks::LookupObject;
      //^to get rid of bogus warning : "-Woverloaded-virtual"
      //virtual functions ARE meant to be overriden!

//    bool LookupObject (clang::LookupResult &R, clang::Scope *);
    bool LookupObject (clang::TagDecl* t);

    void InclusionDirective(clang::SourceLocation HashLoc,
                            const clang::Token &IncludeTok,
                            llvm::StringRef FileName,
                            bool IsAngled,
                            clang::CharSourceRange FilenameRange,
                            const clang::FileEntry *File,
                            llvm::StringRef SearchPath,
                            llvm::StringRef RelativePath,
                            const clang::Module *Imported);
    void TransactionCommitted(const Transaction& T);

    typedef llvm::DenseMap<const clang::FileEntry*, std::vector<clang::Decl*> > FwdDeclsMap;
  private:
    // The key is the Unique File ID obtained from the source manager.
    FwdDeclsMap m_Map;

//    AutoloadingStateInfo m_State;

    void report(clang::SourceLocation l, std::string name,std::string header);
  };
} // end namespace cling

#endif // CLING_AUTOLOAD_CALLBACK_H


{'fraction_non_alphanumeric': 0.1564835164835165, 'fraction_numerical': 0.0, 'mean_word_length': 2.1670146137787056, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 19, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5097860', 'n_tokens_mistral': 1239, 'n_tokens_neox': 1242, 'n_words': 329}