1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 12:57:35 +00:00
serenity/Userland/Services
creator1creeper1 19d9d5bfe1 Everywhere: Mark Vector of mutable references as mutable
The point of a reference type is to behave just like the referred-to
type. So, a Foo& should behave just like a Foo.

In these cases, we had a const Vector. If it was a const Vector of Foo,
iterating over the Vector would only permit taking const references to
the individual Foos.

However, we had a const Vector of Foo&. The behavior should not
change. We should still only be permitted to take const references to
the individual Foos. Otherwise, we would be allowed to mutate the
individual Foos, which would mutate the elements of the const Vector.
This wouldn't modify the stored pointers, but it would modify the
objects that the references refer to. Since references should be
transparent, this should not be legal.

So it should be impossible to get mutable references into a const
Vector. Since we need mutable references in these cases to call the
mutating member functions, we need to mark the Vector as mutable as
well.
2022-01-16 00:38:21 +03:30
..
AudioServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
ChessEngine ChessEngine: Remove unused 'rpath' promise 2022-01-03 15:56:41 +01:00
Clipboard LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
ConfigServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
CrashDaemon Everywhere: Use default execpromises argument for Core::System::pledge 2021-11-28 08:04:57 +01:00
DHCPClient DHCP4Client: Cast unused Timer return values to void 2021-12-05 15:31:03 +01:00
EchoServer LibCore+Userland+Tests: Convert Stream APIs to construct on heap 2022-01-13 15:16:12 +03:30
FileOperation Userland: Use Core::ArgsParser's Vector<StringView> API everywhere 2021-11-26 23:27:57 +01:00
FileSystemAccessServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
ImageDecoder LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
InspectorServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
KeyboardPreferenceLoader KeyboardPreferenceLoader: Use Core::System::ioctl() 2021-11-30 23:34:40 +01:00
LaunchServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
LoginServer Everywhere: Fix spelling mistakes 2022-01-07 15:44:42 +01:00
LookupServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
NotificationServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
RequestServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
SpiceAgent LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
SQLServer LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
SystemServer Everywhere: Add serenity_dev_{makedev,major,minor} 2022-01-09 00:58:44 +01:00
Taskbar Taskbar: Include ScreenLayout.h from Services directory 2022-01-12 20:26:46 +02:00
TelnetServer LibCore+Userland+Tests: Convert Stream APIs to construct on heap 2022-01-13 15:16:12 +03:30
WebContent LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
WebServer WebServer: Add charset declaration to directory listings 2022-01-14 21:32:55 +01:00
WebSocket LibCore+LibIPC+Everywhere: Return Stream::LocalSocket from LocalServer 2022-01-15 13:29:48 +03:30
WindowServer Everywhere: Mark Vector of mutable references as mutable 2022-01-16 00:38:21 +03:30
CMakeLists.txt LoginServer: Layout a basic login window 2021-10-17 22:18:48 +02:00