https://github.com/JDevlieghere commented:

I like the idea of making the request handlers responsible for telling us 
whether they should be deferred compared to the allow-list I implemented. 
That's definitely an improvement. 

What I don't like is how this introduces more statefulness, especially in the 
request handlers. The queueing/deferring logic isn't trivial and I would 
strongly prefer if we could keep it centralized as much as possible. With this 
PR we end up with both a separate queue and a method that makes the `Run` 
operation behaves differently depending on the global DAP state (i.e. if we've 
send the configuration request). 

Would it be possible to have the RequestHandlers advertise whether or not they 
should be deferred until the configuration is done (e.g. 
`DeferredUntilConfigurationDone`), and keep the latter an implementation detail 
of the DAP class? And strictly handle deferring at the queue level?

PS: Small nit, but your PR is titled "Basic implementation of a deferred 
request." which isn't accurate because deferred requests are already 
implemented. A better title would be "Change the way we defer requests" or 
something similar.

https://github.com/llvm/llvm-project/pull/140260
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to