Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Update copyright lines for 2023.
[simgrid.git] / src / s4u / s4u_Mailbox.cpp
index a0c99e5..0ebd9cf 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2022. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2006-2023. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
 XBT_LOG_EXTERNAL_CATEGORY(s4u);
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(s4u_channel, s4u, "S4U Communication Mailboxes");
 
-namespace simgrid {
-namespace s4u {
+namespace simgrid::s4u {
 
-const xbt::string& Mailbox::get_name() const
+const std::string& Mailbox::get_name() const
 {
   return pimpl_->get_name();
 }
@@ -134,8 +133,13 @@ Mailbox::iprobe(int type, const std::function<bool(void*, void*, kernel::activit
   return kernel::actor::simcall_answered(
       [this, type, &match_fun, data] { return pimpl_->iprobe(type, match_fun, data); });
 }
-} // namespace s4u
-} // namespace simgrid
+
+void Mailbox::clear()
+{
+  kernel::actor::simcall_answered([this]() { this->pimpl_->clear(true); });
+}
+
+} // namespace simgrid::s4u
 
 /* **************************** Public C interface *************************** */
 sg_mailbox_t sg_mailbox_by_name(const char* alias)