Why would you evaluate it using an interpreter? Since you are using it in the context of a rust lambda you compile it. You just have a rust file that calls cargo-watch as a library. Crafting an interpreter seems like an incredibly bad idea.
But now you have to know at compile time what you're watching, which is not what cargo-watch or any of the similar commands like entr do.
Considering you have a rust file and the dependency why wouldn't you compile it? It's not like rustc is not available when you are using cargo-watch.
Anyway, doing all that just so you don't have to write a regexp has all the hallmarks of overkill. Keep it simple.