Funny. I removed all modules from my C++ codebase (roughly 10% of it) and I got about 10-16% shorter compilation times. Not to mention Intellisense no longer crashing all over the place.
I wonder if it ever be a worthwhile feature to use.
Dammit... #SFML socket classes are NonCopyable through declaring their copy constructors private.
This prevents the autogeneration of the move constructors.
Thus, by proxy, I cannot make a factory function that would return std::expected<sf::UdpSocket, ErrorType>, because it has value semantics 😭
And I C++ diagnostics really didn't help here - I had the socket wrapped in another class that I wanted to return in the expected and all I got was "cannot convert from 'Client' to 'std::expected<Client,ErrorMessage>'"