Victor Boivie
cd3d29b6fb
pc: Simplify StreamId class
...
Before this CL, the StreamId class represented either a valid SCTP
stream ID, or "nothing", which means that it was a wrapped
absl::optional. Since created data channels don't have a SCTP stream ID
until it's known whether this peer will use odd or even numbers, the
"nothing" value was used for that state.
This unfortunately made it a bit hard to work with objects of this type,
as one always had to check if it contained a value. And even if a caller
would check this, and then pass the StreamId to a different function,
that function would have to do the check itself (often as a RTC_DCHECK)
since the passed StreamId always could have that state.
This CL simply extracts the "absl::optional" part of it, forcing holders
to wrap it in an optional type - when it can be "nothing". But allowing
the other code to just pass StreamId that can't be "nothing". That
simplifies the code a bit, potentially removing some bugs.
Bug: chromium:41221056
Change-Id: I93104cdd5d2f5fc1dbeb9d9dfc4cf361f11a9d68
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/342440
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41880}
2024-03-12 10:57:56 +00:00
..
2023-06-09 14:14:12 +00:00
2022-04-20 13:18:33 +00:00
2024-03-12 10:57:56 +00:00
2023-11-13 13:23:04 +00:00
2023-11-13 13:23:04 +00:00
2023-11-13 13:23:04 +00:00
2022-06-15 09:47:38 +00:00
2023-11-13 13:23:04 +00:00
2024-03-08 09:45:12 +00:00
2023-06-29 09:32:04 +00:00
2024-02-27 15:55:02 +00:00
2023-11-30 14:06:01 +00:00
2023-10-30 14:43:46 +00:00
2023-12-06 18:01:06 +00:00
2023-12-06 18:01:06 +00:00
2023-11-13 13:23:04 +00:00
2024-03-12 10:57:56 +00:00
2024-03-12 10:57:56 +00:00
2023-11-13 13:23:04 +00:00
2024-03-12 10:57:56 +00:00
2021-04-19 19:32:23 +00:00
2023-05-03 11:09:26 +00:00
2023-03-12 17:28:14 +00:00
2023-09-05 11:37:32 +00:00
2023-08-22 13:48:09 +00:00
2024-02-08 14:34:04 +00:00
2022-06-15 09:47:38 +00:00
2023-12-14 21:01:04 +00:00
2023-12-14 21:01:04 +00:00
2022-08-03 14:16:35 +00:00
2022-09-09 10:44:17 +00:00
2022-09-09 10:44:17 +00:00
2021-07-30 22:13:59 +00:00
2022-03-10 18:36:43 +00:00
2023-11-13 13:23:04 +00:00
2023-04-21 11:19:37 +00:00
2022-10-12 11:23:22 +00:00
2023-11-13 13:23:04 +00:00
2021-02-10 15:04:55 +00:00
2022-03-10 18:36:43 +00:00
2022-02-24 11:05:06 +00:00
2023-03-24 07:44:18 +00:00
2023-03-24 07:44:18 +00:00
2022-02-24 11:05:06 +00:00
2024-03-08 20:39:59 +00:00
2024-01-22 18:27:38 +00:00
2022-05-04 11:57:50 +00:00
2023-03-24 07:44:18 +00:00
2024-03-08 09:45:12 +00:00
2024-03-08 09:45:12 +00:00
2024-03-08 09:45:12 +00:00
2024-02-27 15:55:02 +00:00
2024-02-08 14:34:04 +00:00
2024-02-08 14:34:04 +00:00
2022-11-14 12:10:06 +00:00
2024-03-08 20:39:59 +00:00
2024-02-25 23:46:52 +00:00
2024-01-19 15:37:32 +00:00
2022-06-15 09:47:38 +00:00
2023-12-04 14:42:44 +00:00
2022-05-30 13:05:03 +00:00
2021-11-02 11:51:31 +00:00
2024-02-08 14:34:04 +00:00
2024-02-29 08:02:26 +00:00
2024-02-08 14:34:04 +00:00
2022-04-20 13:18:33 +00:00
2022-04-20 13:18:33 +00:00
2022-04-21 12:32:17 +00:00
2022-02-15 21:55:59 +00:00
2023-11-13 13:23:04 +00:00
2022-06-15 09:47:38 +00:00
2022-04-21 12:32:17 +00:00
2023-01-30 20:09:07 +00:00
2023-03-22 09:10:27 +00:00
2024-03-08 20:39:59 +00:00
2024-02-08 14:34:04 +00:00
2023-11-03 12:32:14 +00:00
2024-02-26 10:52:23 +00:00
2024-01-03 12:03:11 +00:00
2023-11-13 13:23:04 +00:00
2023-11-27 16:46:27 +00:00
2024-01-08 13:54:56 +00:00
2024-01-08 13:54:56 +00:00
2024-01-19 12:26:56 +00:00
2023-12-07 21:46:56 +00:00
2023-12-05 15:44:43 +00:00
2024-03-08 20:39:59 +00:00
2024-02-02 17:02:29 +00:00
2024-02-12 14:47:12 +00:00
2023-10-21 16:25:11 +00:00
2023-11-03 12:32:14 +00:00
2024-02-29 12:43:05 +00:00
2022-11-11 10:29:25 +00:00
2022-11-11 10:29:25 +00:00
2024-02-07 14:10:02 +00:00
2024-01-19 14:42:10 +00:00
2023-12-14 14:50:31 +00:00
2024-01-16 08:30:37 +00:00
2023-12-19 09:12:18 +00:00
2024-02-26 10:52:23 +00:00
2023-11-13 13:23:04 +00:00
2023-02-10 12:24:47 +00:00
2024-03-08 09:45:12 +00:00
2024-02-07 14:10:02 +00:00
2022-06-15 09:47:38 +00:00
2021-05-28 06:53:29 +00:00
2023-05-03 11:09:26 +00:00
2022-12-14 11:00:17 +00:00
2022-12-14 11:00:17 +00:00
2024-03-08 20:39:59 +00:00
2024-02-17 18:41:38 +00:00
2024-01-19 15:37:32 +00:00
2024-01-25 21:56:08 +00:00
2023-11-13 13:23:04 +00:00
2024-01-25 21:56:08 +00:00
2021-07-30 22:13:59 +00:00
2021-08-11 21:50:08 +00:00
2021-11-15 21:44:59 +00:00
2022-03-10 18:36:43 +00:00
2023-06-15 15:53:29 +00:00
2023-06-15 15:53:29 +00:00
2023-06-15 15:53:29 +00:00
2021-05-28 06:53:29 +00:00
2024-01-25 12:29:42 +00:00
2023-01-05 09:04:12 +00:00
2023-08-30 14:54:17 +00:00
2023-11-13 13:23:04 +00:00
2024-02-26 10:52:23 +00:00
2024-02-26 10:52:23 +00:00
2024-01-26 06:08:28 +00:00
2024-02-29 12:43:05 +00:00
2023-11-13 13:23:04 +00:00
2023-01-19 15:49:04 +00:00
2023-08-28 12:36:39 +00:00
2023-11-13 13:23:04 +00:00
2023-11-06 09:52:43 +00:00
2024-02-27 17:46:18 +00:00
2024-02-27 17:46:18 +00:00
2024-03-12 10:57:56 +00:00
2024-03-12 10:57:56 +00:00
2023-03-21 13:57:47 +00:00
2023-03-21 13:57:47 +00:00
2023-11-13 13:23:04 +00:00
2024-03-12 10:57:56 +00:00
2023-11-22 11:46:25 +00:00
2024-03-12 10:57:56 +00:00
2024-02-27 08:28:36 +00:00
2024-02-23 14:20:23 +00:00
2023-11-13 13:23:04 +00:00
2022-02-24 11:05:06 +00:00
2021-01-29 16:14:10 +00:00
2022-02-24 11:05:06 +00:00
2023-05-03 11:09:26 +00:00
2024-02-08 14:34:04 +00:00
2022-01-25 08:25:50 +00:00
2022-01-25 08:25:50 +00:00
2023-09-18 10:09:02 +00:00
2023-09-18 10:09:02 +00:00
2023-09-18 10:09:02 +00:00
2023-11-23 10:40:56 +00:00
2023-11-08 10:24:10 +00:00
2023-11-08 10:24:10 +00:00
2023-11-08 10:24:10 +00:00
2023-11-13 13:23:04 +00:00
2024-02-27 17:46:18 +00:00
2024-02-27 17:46:18 +00:00
2022-04-20 13:18:33 +00:00
2023-05-24 12:26:56 +00:00
2023-05-24 12:26:56 +00:00
2023-05-24 12:26:56 +00:00
2022-05-02 18:07:24 +00:00
2022-05-02 18:07:24 +00:00
2023-10-06 12:25:37 +00:00
2021-07-30 22:13:59 +00:00
2024-02-08 12:52:58 +00:00
2024-02-08 12:52:58 +00:00
2023-11-13 13:23:04 +00:00
2023-09-01 08:12:55 +00:00
2023-01-10 06:44:27 +00:00
2023-11-13 13:23:04 +00:00
2023-03-24 07:44:18 +00:00
2023-03-24 07:44:18 +00:00
2022-03-18 16:17:24 +00:00
2023-11-13 13:23:04 +00:00
2023-03-24 07:44:18 +00:00
2023-03-24 07:44:18 +00:00
2022-06-15 09:47:38 +00:00
2022-09-09 10:44:17 +00:00
2023-11-13 13:23:04 +00:00
2024-03-08 20:39:59 +00:00
2024-03-08 20:39:59 +00:00
2024-01-03 12:03:11 +00:00
2024-02-08 14:34:04 +00:00
2024-02-08 14:34:04 +00:00