Changeset d40555e for libcfa/src
- Timestamp:
- Mar 9, 2023, 10:58:59 AM (22 months ago)
- Branches:
- ADT, ast-experimental, master
- Children:
- 0f275f7
- Parents:
- dd16dd5
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/actor.hfa
rdd16dd5 rd40555e 681 681 // assigned at creation to __base_msg_finished to avoid unused message warning 682 682 message __base_msg_finished @= { .allocation_ : Finished }; 683 struct __DeleteMsg { inline message; } DeleteMsg = __base_msg_finished; 684 struct __DestroyMsg { inline message; } DestroyMsg = __base_msg_finished; 685 struct __FinishedMsg { inline message; } FinishedMsg = __base_msg_finished; 686 void ?{}( __DeleteMsg & this, Allocation status ) { ((message &) this){ status }; } 687 void ?{}( __DestroyMsg & this, Allocation status ) { ((message &) this){ status }; } 688 void ?{}( __FinishedMsg & this, Allocation status ) { ((message &) this){ status }; } 683 struct __DeleteMsg { inline message; }; 684 struct __DestroyMsg { inline message; }; 685 struct __FinishedMsg { inline message; }; 686 687 // These are needed so that the compiler doesn't make a temporary when initializing below 688 static inline void ?{}( __DeleteMsg & this, message & other ) { this.allocation_ = other.allocation_; } 689 static inline void ?{}( __DestroyMsg & this, message & other ) { this.allocation_ = other.allocation_; } 690 static inline void ?{}( __FinishedMsg & this, message & other ) { this.allocation_ = other.allocation_; } 691 692 __DeleteMsg DeleteMsg = __base_msg_finished; 693 __DestroyMsg DestroyMsg = __base_msg_finished; 694 __FinishedMsg FinishedMsg = __base_msg_finished; 689 695 690 696 Allocation receive( actor & this, __DeleteMsg & msg ) { return Delete; }
Note: See TracChangeset
for help on using the changeset viewer.