diff --git a/extension/module/bundled_module.cpp b/extension/module/bundled_module.cpp index 083aef141a..7f26f00079 100644 --- a/extension/module/bundled_module.cpp +++ b/extension/module/bundled_module.cpp @@ -15,6 +15,7 @@ namespace executorch { namespace extension { +namespace ET_BUNDLED_MODULE_NAMESPACE { namespace { std::unique_ptr program_data_loader( @@ -108,5 +109,6 @@ runtime::Error BundledModule::verify_method_outputs( *method, bundled_program_ptr_, testset_idx, rtol, atol); } +} // namespace ET_BUNDLED_MODULE_NAMESPACE } // namespace extension } // namespace executorch diff --git a/extension/module/bundled_module.h b/extension/module/bundled_module.h index 73246a3e72..7000dc964a 100644 --- a/extension/module/bundled_module.h +++ b/extension/module/bundled_module.h @@ -10,8 +10,15 @@ #include +#ifdef USE_ATEN_LIB +#define ET_BUNDLED_MODULE_NAMESPACE bundled_module::aten +#else // !USE_ATEN_LIB +#define ET_BUNDLED_MODULE_NAMESPACE bundled_module +#endif // USE_ATEN_LIB + namespace executorch { namespace extension { +namespace ET_BUNDLED_MODULE_NAMESPACE { using executorch::extension::ET_MODULE_NAMESPACE::Module; @@ -121,5 +128,6 @@ class BundledModule : public Module { bool is_loaded_from_file_ = false; }; +} // namespace ET_BUNDLED_MODULE_NAMESPACE } // namespace extension } // namespace executorch diff --git a/extension/module/module.h b/extension/module/module.h index 0c4d4779be..6818714f1b 100644 --- a/extension/module/module.h +++ b/extension/module/module.h @@ -16,6 +16,12 @@ #include +#ifdef USE_ATEN_LIB +#define ET_MODULE_NAMESPACE module::aten +#else // !USE_ATEN_LIB +#define ET_MODULE_NAMESPACE module +#endif // USE_ATEN_LIB + namespace executorch { namespace extension { @@ -24,6 +30,10 @@ using ET_RUNTIME_NAMESPACE::MethodMeta; using ET_RUNTIME_NAMESPACE::NamedDataMap; using ET_RUNTIME_NAMESPACE::Program; +class ExecuTorchJni; + +namespace ET_MODULE_NAMESPACE { + /** * A facade class for loading programs and executing methods within them. */ @@ -493,9 +503,10 @@ class Module { protected: std::unordered_map methods_; - friend class ExecuTorchJni; + friend class executorch::extension::ExecuTorchJni; }; +} // namespace ET_MODULE_NAMESPACE } // namespace extension } // namespace executorch @@ -503,6 +514,13 @@ namespace torch { namespace executor { // TODO(T197294990): Remove these deprecated aliases once all users have moved // to the new `::executorch` namespaces. -using ::executorch::extension::Module; +using ::executorch::extension::ET_MODULE_NAMESPACE::Module; } // namespace executor } // namespace torch + +namespace executorch { +namespace extension { +// backward compatible namespace alias +using ::executorch::extension::ET_MODULE_NAMESPACE::Module; +} // namespace extension +} // namespace executorch diff --git a/extension/module/test/bundled_module_test.cpp b/extension/module/test/bundled_module_test.cpp index 2aa0f34054..24ee3084b7 100644 --- a/extension/module/test/bundled_module_test.cpp +++ b/extension/module/test/bundled_module_test.cpp @@ -11,6 +11,7 @@ using namespace ::executorch::extension; using namespace ::executorch::runtime; +using namespace ::executorch::extension::ET_BUNDLED_MODULE_NAMESPACE; class BundledModuleTest : public ::testing::Test { protected: