Commit Graph

23 Commits

Author SHA1 Message Date
Danil Chapovalov
30a29768e9 Add ArrayView::subspan matching std::subspan behavior
subspan is intend to replace subview even though its behavior is
slightly different.

Bug: webrtc:439801349
Change-Id: I220b5700dda4bf32b4bc07f4522dfed05d11b8d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/445640
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#46794}
2026-02-03 03:50:09 -08:00
Danil Chapovalov
b76e4d0916 Constrain ArrayView constructors not to take over copy constructor
Otherwise, a constructor template is inadvertently selected by overload
resolution instead of the intended copy constructor, because the
template is insufficiently constrained.

This fixes the experimental "runtime-unintended-special-member-overload"
clang-tidy check.

Original-Author: Thomas Köppe <tkoeppe@google.com>
Bug: webrtc:424706384
Change-Id: Ie5f34a4cd8b00c81517ef696515eca7b6da4c986
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/407700
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#45553}
2025-09-04 04:46:06 -07:00
Evan Shrubsole
0bdeb7818c Remove re-exported symbols from rtc and cricket namespaces
Change generated by running

git grep -E -l 'namespace (rtc|cricket)\b \{' > /tmp/export_files.txt
xargs -a /tmp/export_files.txt -L 1 \
  ex -s -c "/#ifdef WEBRTC_ALLOW_DEPRECATED_NAMESPACES/norm d]#" -c "x"
xargs -a /tmp/export_files.txt sed -i \
  -e '/\/\/ Re-export symbols from/d' \
  -e '/\/\/ TODO(bugs.webrtc.org\/4222596): Remove once/d' \
  -e '/\/\/ Backwards compatibe aliases/d' \
  -e '/\/\/ TODO: https:\/\/issues.webrtc.org\/42225969/d'



Bug: webrtc:4222596
Change-Id: Ie62e14b53466da41a2c6421305973e0974fe7e0c
No-IWYU: LSC
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/396080
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#45057}
2025-07-01 03:58:20 -07:00
Harald Alvestrand
3d12066526 Remove redundant webrtc:: prefixes in api
Created by
tools_webrtc/remove_extra_namespace.py --namespace webrtc

and manual adjustments.

This CL was uploaded by git cl split.

R=eshr@webrtc.org

No-IWYU: Refactoring
Bug: webrtc:42232595
Change-Id: Iaa0f996efce0bc521d3558e4e531ef603a9d8890
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/396160
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Auto-Submit: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#44914}
2025-06-11 10:27:01 -07:00
Danil Chapovalov
bf70c05a1a Cleanup usage of arraysize macro in api/
Bug: webrtc:407433458
Change-Id: Ica0448329fc3cc734cb6a9cbab128d6cca19f98a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/392142
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#44668}
2025-05-16 10:08:22 -07:00
Evan Shrubsole
70fb834e8c Add build flag for removing deprecated namespace exports
Bug: webrtc:42232595
Change-Id: Ie66b59fcdfbaa6920cc12e11d7aac11dff907658
No-Iwyu: LSC
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/387860
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#44436}
2025-04-23 06:21:04 -07:00
Evan Shrubsole
ee5ab349f3 Use webrtc name specifier instead of rtc/cricket in api
WebRTC has unified all namespaces to webrtc, and the rtc:: and cricket::
name specifiers need to be replaced with webrtc::. This was generated using
a combination of clang AST rewriting tools and sed.

This CL was uploaded by git cl split.

Bug: webrtc:42232595
Change-Id: Ie05cf23955a3417937fc1dd56d00dda679d1a59e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/386641
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#44384}
2025-04-15 22:17:02 -07:00
Evan Shrubsole
fe5bdd75e0 Move ArrayView, Buffer and related to webrtc namespace
Bug: webrtc:42232595
Change-Id: Idcd603d534eda6a5c1eea36d2c1c1e80c19fa0ca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/376561
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43863}
2025-02-10 03:54:43 -08:00
Dor Hen
049b43bd02 [reland] Comment unused variables in implemented functions
Compiling webrtc with `-Werror=unused-parameters` is failling duo to
those parameters.
Also, it shouldn't harm us to put those in comment for code readability as
well.

NOTE: This time I made sure to iterate over the C files in the
audio_processing folder and compile them using gcc.
On the original CL that was reverted - that failed with the same error
Danil mentioned. This time it seems fine.
I'll make sure to run the same script on the rest of my CLs for sanity

Bug: webrtc:370878648
Change-Id: I83cea3a08777e21d26a95bcad503a2d1b74566eb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364537
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Dor Hen <dorhen@meta.com>
Cr-Commit-Position: refs/heads/main@{#43249}
2024-10-16 11:40:33 +00:00
Danil Chapovalov
678607501c Revert "Comment unused variables in implemented functions"
This reverts commit 05043e1cef.

Reason for revert: breaks compilation of .c files

Original change's description:
> Comment unused variables in implemented functions
>
> Compiling webrtc with `-Werror=unused-parameters` is failling duo to
> those parameters.
> Also, it shouldn't harm us to put those in comment for code readability as
> well.
>
> Bug: webrtc:370878648
> Change-Id: I0ab2eafd26e46312e4595f302b92006c9e23d5d2
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364340
> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#43157}

Bug: webrtc:370878648
Change-Id: I4ea50baa2c3d0d162759c8255171e95c6199ed26
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364580
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Owners-Override: Danil Chapovalov <danilchap@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43162}
2024-10-03 11:51:29 +00:00
Dor Hen
05043e1cef Comment unused variables in implemented functions
Compiling webrtc with `-Werror=unused-parameters` is failling duo to
those parameters.
Also, it shouldn't harm us to put those in comment for code readability as
well.

Bug: webrtc:370878648
Change-Id: I0ab2eafd26e46312e4595f302b92006c9e23d5d2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364340
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43157}
2024-10-03 10:36:46 +00:00
Dor Hen
aefed55c25 [iwyu][1\n] Applying to api/[a-s]*
First batch of applying iwyu to the repo.
Done with:
> ./tools_webrtc/iwyu/apply-iwyu api
> git add api/[a-s]*
> python3 gn_autodeps.py ~/local/webrtc/src out/Default

Last step is a custom script I wrote to automatically apply new required
dependencies for target in gn, which saved tons of time manually going
over the files and fixing.
If this is something that interest others, I can submit it as well.

Bug: webrtc:42226242
Change-Id: Id109e77f50835827495bc4512880c4ec9ae175f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/343680
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Dor Hen <dorhen@meta.com>
Cr-Commit-Position: refs/heads/main@{#42512}
2024-06-19 06:19:20 +00:00
Daniel Cheng
0e1d3c5675 Add reference, pointer, and co type aliases for rtc::ArrayView.
Many STL containers define these type aliases, and they are easier to
work with than add_const_t<add_lvalue_reference_t<value_type>>.

In a followup, `WTF::Vector` in Blink's conversion constructor from
other containers will be SFINAE-guarded using these type aliases.

Bug: chromium:1408442
Change-Id: I7790e6f462a32e7e49bc6468afeda6b2e6d4b631
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/300180
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/main@{#39771}
2023-04-05 20:18:57 +00:00
Mirko Bonadei
6b89130d45 Fix array_view nested namespace.
Bug: webrtc:13075
Change-Id: I4160966487b5a596ade78033081e8dc0a4e11c99
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228944
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34771}
2021-08-16 14:38:57 +00:00
Alessio Bazzica
e2c548503b rtc::ArrayView reverse iterators
- rtc::ArrayView::rbegin()
- rtc::ArrayView::rend()
- rtc::ArrayView::crbegin()
- rtc::ArrayView::crend()

Bug: webrtc:7494
Change-Id: Id773d66cc9da8bd58def1dba35a706914440ef37
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/189880
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32458}
2020-10-21 08:57:13 +00:00
Karl Wiberg
ff61f3a555 Fix + test copying of fixed-sized ArrayView rvalues
Previously, only lvalues were tested, and only lvalues worked.

Bug: webrtc:11389
Change-Id: I524e9d63e0840c3ba274dbe2062d78f72d79019d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169347
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30644}
2020-02-28 09:26:11 +00:00
Amit Hilbuch
e155dd0fdb Adding reinterpret to ArrayView to allow data manipulation.
Reinterpret will only allow conversions when the underlying types are
fundamental and have the same size.

Bug: None
Change-Id: Id6a4e9784998fe65fb26ab3fd398710c892c4a67
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/128228
Commit-Queue: Amit Hilbuch <amithi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27249}
2019-03-22 18:15:22 +00:00
Karl Wiberg
30abc36444 ArrayView: Also accept const references when doing implicit conversions
This allows us to bind to temporaries.

Bug: none
Change-Id: Ic84ad378f344776bef38f9dc81a6fe0dee74400f
Reviewed-on: https://webrtc-review.googlesource.com/c/120901
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26530}
2019-02-04 13:42:20 +00:00
Yves Gerey
665174fdbb Reformat the WebRTC code base
Running clang-format with chromium's style guide.

The goal is n-fold:
 * providing consistency and readability (that's what code guidelines are for)
 * preventing noise with presubmit checks and git cl format
 * building on the previous point: making it easier to automatically fix format issues
 * you name it

Please consider using git-hyper-blame to ignore this commit.

Bug: webrtc:9340
Change-Id: I694567c4cdf8cee2860958cfe82bfaf25848bb87
Reviewed-on: https://webrtc-review.googlesource.com/81185
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23660}
2018-06-19 14:00:39 +00:00
Alessio Bazzica
28a325b523 ArrayView, adding ctor for fixed-size views of const(expr) std::array.
This CL allows to reduce the code required to create fixed-size ArrayView
objects for const(expr) std::array instances. Instead of passing .data() and
size(), it is now sufficient to pass the const(expr) std::array instance.
When instancing an array view with variable size, a different ctor is called.

Bug: webrtc:9076
Change-Id: Ie1182fdc33c6b5657f510b6723552813d5933e3e
Reviewed-on: https://webrtc-review.googlesource.com/76820
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23243}
2018-05-15 13:49:02 +00:00
Alessio Bazzica
858c4d70cd ArrayView, adding ctor for fixed-size views of std::array.
This CL allows to reduce the code required to create fixed-size ArrayView
objects for std::array instances. Instead of passing .data() and .size(),
it is now sufficient to pass the std::array instance. When instancing an
array view with variable size, a different ctor is called.

Bug: webrtc:9076
Change-Id: I4fe133b27cd12827ed0206d40184279fc3a196f5
Reviewed-on: https://webrtc-review.googlesource.com/76160
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23220}
2018-05-14 16:22:09 +00:00
Mirko Bonadei
92ea95e34a Fixing WebRTC after moving from src/webrtc to src/
In https://webrtc-review.googlesource.com/c/src/+/1560 we moved WebRTC
from src/webrtc to src/ (in order to preserve an healthy git history).
This CL takes care of fixing header guards, #include paths, etc...

NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
TBR=tommi@webrtc.org


Bug: chromium:611808
Change-Id: Iea91618212bee0af16aa3f05071eab8f93706578
Reviewed-on: https://webrtc-review.googlesource.com/1561
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19846}
2017-09-15 05:02:56 +00:00
Mirko Bonadei
bb547203bf Moving src/webrtc into src/.
In order to eliminate the WebRTC Subtree mirror in Chromium, 
WebRTC is moving the content of the src/webrtc directory up
to the src/ directory.

NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
TBR=tommi@webrtc.org

Bug: chromium:611808
Change-Id: Iac59c5b51b950f174119565bac87955a7994bc38
Reviewed-on: https://webrtc-review.googlesource.com/1560
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19845}
2017-09-15 04:25:06 +00:00