@@ -52,14 +52,14 @@ typedef uint32_t pa_time_t;
5252#define _pa_static
5353#define _pa_extern
5454#define _pa_has_field_definer (field ) \
55- namespace proto_activities { \
55+ namespace proto_activities { namespace internal { \
5656 template < class ... > using void_t = void ; \
5757 template <typename T, typename = void > \
5858 struct has_field_ ##field : std::false_type {}; \
5959 template <typename T> \
6060 struct has_field_ ##field<T, void_t <decltype (std::declval<T>().field)>> : std::true_type {}; \
61- }
62- #define _pa_has_field (ty, field ) proto_activities::has_field_##field<ty>::value
61+ } }
62+ #define _pa_has_field (ty, field ) proto_activities::internal:: has_field_##field<ty>::value
6363#endif
6464
6565/* Context */
@@ -90,15 +90,15 @@ typedef uint32_t pa_time_t;
9090 __VA_ARGS__; \
9191 };
9292#else
93- namespace proto_activities {
93+ namespace proto_activities { namespace internal {
9494 struct AnyFrame {
9595 virtual ~AnyFrame () = default ;
9696 virtual void reset () = 0;
9797 pa_pc_t _pa_pc{};
9898 };
99- }
99+ } }
100100#define pa_activity_ctx (nm, ...) \
101- struct _pa_frame_name (nm) final : proto_activities::AnyFrame { \
101+ struct _pa_frame_name (nm) final : proto_activities::internal:: AnyFrame { \
102102 void reset () final { \
103103 *this = _pa_frame_name (nm){}; \
104104 } \
@@ -215,7 +215,7 @@ namespace proto_activities {
215215#else
216216
217217#define _pa_co_def (n ) \
218- proto_activities::AnyFrame* _pa_co[n];
218+ proto_activities::internal:: AnyFrame* _pa_co[n];
219219
220220#define _pa_co_clr (i ) _pa_co[i] = nullptr ;
221221
@@ -366,7 +366,7 @@ namespace proto_activities {
366366
367367#else
368368
369- namespace proto_activities {
369+ namespace proto_activities { namespace internal {
370370 using Thunk = std::function<void ()>;
371371
372372 struct Defer {
@@ -441,13 +441,13 @@ namespace proto_activities {
441441 Thunk thunk;
442442 Updatable* head{};
443443 };
444- }
444+ } }
445445
446- #define pa_defer_res proto_activities::Defer _pa_defer{};
446+ #define pa_defer_res proto_activities::internal:: Defer _pa_defer{};
447447#define pa_defer pa_self._pa_defer.thunk = [=]()
448448
449449_pa_has_field_definer (_pa_susres);
450- namespace proto_activities {
450+ namespace proto_activities { namespace internal {
451451 template <typename T>
452452 auto invoke_suspend (T* frame) -> typename std::enable_if<_pa_has_field(T, _pa_susres)>::type {
453453 frame->_pa_susres .suspend ();
@@ -460,37 +460,37 @@ namespace proto_activities {
460460 }
461461 template <typename T>
462462 auto invoke_resume (T* frame) -> typename std::enable_if<!_pa_has_field(T, _pa_susres)>::type {}
463- }
463+ } }
464464#if __cplusplus >= 201703L
465465#define _pa_susres_suspend (ty, alias ) \
466- if constexpr (_pa_has_field(ty, _pa_susres)) { proto_activities::invoke_suspend<ty>(_pa_inst_ptr (alias)); }
466+ if constexpr (_pa_has_field(ty, _pa_susres)) { proto_activities::internal:: invoke_suspend<ty>(_pa_inst_ptr (alias)); }
467467#define _pa_susres_resume (ty, alias ) \
468- if constexpr (_pa_has_field(ty, _pa_susres)) { proto_activities::invoke_resume<ty>(_pa_inst_ptr (alias)); }
468+ if constexpr (_pa_has_field(ty, _pa_susres)) { proto_activities::internal:: invoke_resume<ty>(_pa_inst_ptr (alias)); }
469469#else
470- #define _pa_susres_suspend (ty, alias ) proto_activities::invoke_suspend<ty>(_pa_inst_ptr(alias));
471- #define _pa_susres_resume (ty, alias ) proto_activities::invoke_resume<ty>(_pa_inst_ptr(alias));
470+ #define _pa_susres_suspend (ty, alias ) proto_activities::internal:: invoke_suspend<ty>(_pa_inst_ptr(alias));
471+ #define _pa_susres_resume (ty, alias ) proto_activities::internal:: invoke_resume<ty>(_pa_inst_ptr(alias));
472472#endif
473473
474- #define pa_susres_res proto_activities::SusRes _pa_susres{};
474+ #define pa_susres_res proto_activities::internal:: SusRes _pa_susres{};
475475#define pa_suspend pa_self._pa_susres.sus_thunk = [&]()
476476#define pa_resume pa_self._pa_susres.res_thunk = [&]()
477477
478478_pa_has_field_definer (_pa_enter);
479- namespace proto_activities {
479+ namespace proto_activities { namespace internal {
480480 template <typename T>
481481 auto invoke_enter (T& frame) -> typename std::enable_if<_pa_has_field(T, _pa_enter)>::type {
482482 frame._pa_enter .invoke ();
483483 }
484484 template <typename T>
485485 auto invoke_enter (T& frame) -> typename std::enable_if<!_pa_has_field(T, _pa_enter)>::type {}
486- }
486+ } }
487487#if __cplusplus >= 201703L
488- #define _pa_enter_invoke (ty ) if constexpr (_pa_has_field(ty, _pa_enter)) { proto_activities::invoke_enter<ty>(pa_self); }
488+ #define _pa_enter_invoke (ty ) if constexpr (_pa_has_field(ty, _pa_enter)) { proto_activities::internal:: invoke_enter<ty>(pa_self); }
489489#else
490- #define _pa_enter_invoke (ty ) proto_activities::invoke_enter<ty>(pa_self);
490+ #define _pa_enter_invoke (ty ) proto_activities::internal:: invoke_enter<ty>(pa_self);
491491#endif
492492
493- #define pa_enter_res proto_activities::Enter _pa_enter{};
493+ #define pa_enter_res proto_activities::internal:: Enter _pa_enter{};
494494#define pa_enter pa_self._pa_enter = [&]()
495495
496496#endif
@@ -500,8 +500,8 @@ namespace proto_activities {
500500#ifdef _PA_ENABLE_CPP
501501
502502namespace proto_activities {
503- struct Signal final : Updatable {
504- Signal (Enter& enter) {
503+ struct Signal final : internal:: Updatable {
504+ Signal (internal:: Enter& enter) {
505505 enter.add (this );
506506 }
507507 Signal (const Signal&) = delete ;
@@ -523,8 +523,8 @@ namespace proto_activities {
523523 };
524524
525525 template <typename T>
526- struct ValSignal final : Updatable {
527- ValSignal (Enter& enter) {
526+ struct ValSignal final : internal:: Updatable {
527+ ValSignal (internal:: Enter& enter) {
528528 enter.add (this );
529529 }
530530 ValSignal (const ValSignal&) = delete ;
0 commit comments