JSBHeader.h 713 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #pragma once
  2. #include <Atomic/Container/Vector.h>
  3. #include <Atomic/Container/Str.h>
  4. #include <Atomic/Container/ArrayPtr.h>
  5. using namespace Atomic;
  6. namespace CPlusPlus
  7. {
  8. class TranslationUnit;
  9. class Namespace;
  10. }
  11. class JSBModule;
  12. class JSBHeader
  13. {
  14. CPlusPlus::TranslationUnit* translationUnit_;
  15. CPlusPlus::Namespace* globalNamespace_;
  16. SharedArrayPtr<char> data_;
  17. public:
  18. JSBHeader(JSBModule* module, const String& filepath) :
  19. translationUnit_(NULL),
  20. filepath_(filepath),
  21. module_(module)
  22. {
  23. }
  24. void Parse();
  25. void VisitPreprocess();
  26. void VisitHeader();
  27. // absolute path to source file
  28. String filepath_;
  29. JSBModule* module_;
  30. };