-/** Can this requests can be executed.
- *
- * Most requests are always enabled but WAIT and WAITANY
- * are not always enabled: a WAIT where the communication does not
- * have both a source and a destination yet is not enabled
- * (unless timeout is enabled in the wait and enabeld in SimGridMC).
- */
-int MC_request_is_enabled(smx_simcall_t req);
-int MC_request_is_enabled_by_idx(smx_simcall_t req, unsigned int idx);
+enum class RequestType {
+ simix,
+ executed,
+ internal,
+};
+
+XBT_PRIVATE bool request_depend(smx_simcall_t req1, smx_simcall_t req2);
+
+XBT_PRIVATE std::string request_to_string(smx_simcall_t req, int value, simgrid::mc::RequestType type);
+
+XBT_PRIVATE bool request_is_enabled_by_idx(smx_simcall_t req, unsigned int idx);