[Missing <summary> documentation for "N:Archon.SwissArmyLib.Coroutines"]
A very similar but more performant alternative to Unity's coroutines. A coroutine do not belong to any gameobject and therefore doesn't depend on their life cycle. You can however optionally link the coroutines to a gameobject or component. Which update loop they're part of can be specified when they're started. They also allocate less garbage (especially with the yield instructions). Just as with Unity's coroutines you can yield aand to wait for them to finish. Instead of using Unity's YieldInstructions you should use the pooled replacements:
A bunch of helpful extensions for starting and stopping coroutines.
Represents a yield instruction that can be freed when the coroutine they're running in is despawned.