Adding ScheduleGraph::contains_set
#16206
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Objective
The schedule graph can easily confirm whether a set is contained or not.
This helps me in my personal project where I write an extension trait for
Schedule
and I want to configure a specific set in its methods. The set in question has a run condition though and I don't want to add that condition to the same schedule as many times as the trait methods are called. Since the non-pub set is unknown to the schedule until then, acontains_set
is sufficient.It is probably trivial to add a method that returns an
Option<NodeId>
as well but as I personally don't need it I did not add that. If it is desired I can do so here though. It might be unneeded to have acontains_set
then because one could checkis_some
on the returned id in that case.An argument against that is that future changes may be easier if only a
contains_set
needs to be ported.Solution
Added
ScheduleGraph::contains_set
.Testing
I put the below showcase code into a temporary unit test and it worked. If wanted I add it as a test too but I did not see that other more somewhat complicated methods have tests
Showcase