diff options
author | bloodstalker <thabogre@gmail.com> | 2017-04-13 09:14:08 +0000 |
---|---|---|
committer | bloodstalker <thabogre@gmail.com> | 2017-04-13 09:14:08 +0000 |
commit | 989518ead00d635b11fc2384feecd66cb2e3e50a (patch) | |
tree | 40550ec8c5d1b4afac7ecf5f15f462b20e497bba | |
parent | adding some infrastructure.wip. (diff) | |
download | mutator-989518ead00d635b11fc2384feecd66cb2e3e50a.tar.gz mutator-989518ead00d635b11fc2384feecd66cb2e3e50a.zip |
adding some infrastructure.wip.
-rw-r--r-- | bruiser/bruiser.h | 50 |
1 files changed, 49 insertions, 1 deletions
diff --git a/bruiser/bruiser.h b/bruiser/bruiser.h index cf22e5e..fcfcaec 100644 --- a/bruiser/bruiser.h +++ b/bruiser/bruiser.h @@ -27,9 +27,57 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.* /*included modules*/ /*project headers*/ /*standard library headers*/ +#include <string> +#include <fstream> +/*clang headers*/ +#include "clang/AST/ASTContext.h" +#include "clang/AST/Expr.h" +#include "clang/AST/Type.h" +#include "clang/AST/ASTTypeTraits.h" +/*llvm headers*/ + +/**********************************************************************************************************************/ +/*using*/ +using namespace llvm; +using namespace clang; +/**********************************************************************************************************************/ +namespace bruiser +{ +/**********************************************************************************************************************/ +/** + * @brief This class hanhles the logging for bruiser. + */ +class BruiserReport +{ + public: + BruiserReport (); + + ~BruiserReport(); + + bool PrintToLog(std::string __in_arg); + + private: + std::ofstream BruiserLog; +}; +/**********************************************************************************************************************/ +/** + * @brief looks through types. + */ +class TypeInfo +{ + public: + explicit TypeInfo(const clang::ast_type_traits::DynTypedNode* __dtn); + + ~TypeInfo(); + + const clang::Type* getTypeInfo(clang::ASTContext* __astc); + + private: + const clang::ast_type_traits::DynTypedNode* DTN; +}; /**********************************************************************************************************************/ -/*externals*/ /**********************************************************************************************************************/ +} // end of namespace bruiser #endif /*last line intentionally left balnk.*/ |