- 22 Nov, 2022 2 commits
-
-
PiperOrigin-RevId: 490228223 Change-Id: Iec5af16531132a903aaa3e584dd87b03feb2c0c7
Abseil Team committed -
Zero encoded_remaining when a string field doesn't fit, so that we don't leave partial data in the buffer (all decoders should ignore it anyway) and to be sure that we don't try to put any subsequent operands in either (there shouldn't be enough space). PiperOrigin-RevId: 490143656 Change-Id: I4d743dd9214013fbd151478ef662d50affd5ff7a
Andy Getzendanner committed
-
- 21 Nov, 2022 2 commits
-
-
- Add assertions that the iterators haven't been invalidated. - Also refactor some generation-related code to define the functions inside ABSL_BTREE_ENABLE_GENERATIONS ifdef/else branches. PiperOrigin-RevId: 489988637 Change-Id: I34d32ed2e27cf89f7f8bb5d9c1f6770bb40b8794
Evan Brown committed -
Also: * Clarify that padding refers to ‘output’ padding * Make CalculateBase64EscapedLen() a bit more discoverable * Reference all relevant non-obsolete RFCs (2045 as well as 4648) PiperOrigin-RevId: 489981278 Change-Id: I27365ea5d52bfdb0c9d02ed96d05b4a60f2dc36f
Abseil Team committed
-
- 18 Nov, 2022 1 commit
-
-
PiperOrigin-RevId: 489569565 Change-Id: Ia08c0c956a672ad435885c68f3e4a3de0405dad1
Andy Getzendanner committed
-
- 17 Nov, 2022 1 commit
-
-
This stores the operands to LOG (and CHECK) as separate fields in a serialized protobuf. The protobuf format is not yet published. PiperOrigin-RevId: 489275799 Change-Id: I86d83671a6b1feb2bddd5bee51552907897ca8eb
Andy Getzendanner committed
-
- 16 Nov, 2022 7 commits
-
-
PiperOrigin-RevId: 489044912 Change-Id: I1657dd60bcfa2d0fb4b889f27f4f237325b73f08
Andy Getzendanner committed -
absl::make_unique is now std::make_unique in all configurations. Documentation has been updated to recommend using the std::make_unique spelling. PiperOrigin-RevId: 488988005 Change-Id: Iddb8b863e6301876713d78c3fbe6660d0f9a38cf
Derek Mauro committed -
PiperOrigin-RevId: 488986942 Change-Id: I2babb7ea30d60c544f55ca9ed02d9aed23051a12
Abseil Team committed -
PiperOrigin-RevId: 488955034 Change-Id: I143f3632b295098bc6ea5c6aedf7446dd91c668b
Tom Hughes committed -
This is used when demoting regular logging inside a LogSink::Send to raw-like to avoid infinite recursive dispatch. PiperOrigin-RevId: 488934154 Change-Id: I0aaaeea0ceaaff3c4394308a7102a55befbef290
Andy Getzendanner committed -
PiperOrigin-RevId: 488930308 Change-Id: Ie620734e2f47df47e4000bc8eb2fff7f52939596
Derek Mauro committed -
PiperOrigin-RevId: 488799458 Change-Id: I1aaaa60c5be3260055a6f5773f78cb4043a60ac8
Tom Hughes committed
-
- 15 Nov, 2022 4 commits
-
-
Add a new API for `extract_and_get_next()` in b-tree that returns both the extracted node and an iterator to the next element in the container. Motivation: it can be useful, when calling `extract` to maintain an iterator next to the location of the extracted element. `std::set`, et al. allow for this because they have iterator stability. `absl::{flat,node}_hash_{set,map}` allow for this because they are guaranteed not to rehash when elements are removed so they also have iterator stability across calls to `extract()`. But b-tree doesn't support this use case without this API because removing elements can cause rebalancing, which invalidates iterators. We can get the next iterator without this API using `lower_bound(node_handle.value())`, but that requires an extra lookup. PiperOrigin-RevId: 488721247 Change-Id: Id66f17311bf53678f536e4e4f070775f5ce0c542Evan Brown committed -
PiperOrigin-RevId: 488676817 Change-Id: I13f15bb93ab6dda4c56caf969be3c14f84ada6a0
Abseil Team committed -
availability of a few timezones for "time_test" and "time_benchmark", but (file-based) zoneinfo is now secured via existing Bazel data/env attributes, or new CMake environment settings. This also avoids the need for employing the CCTZ zone-info-source extension mechanism (which is a win). PiperOrigin-RevId: 488673952 Change-Id: I9def9d705c8f0dca3c0bcddc2406edb098ea5da3
Abseil Team committed -
Also updated documentation around FormatSink and PutPaddedString PiperOrigin-RevId: 488651398 Change-Id: Ic6c586dbb8bea61df841a142f12d22c7e5b03f43
Tom Manshreck committed
-
- 14 Nov, 2022 2 commits
-
-
PiperOrigin-RevId: 488373221 Change-Id: I1e30820188cc860ce4df8fddafa04de343ec46af
Derek Mauro committed -
matching ${TZDIR} setting for, //absl/time/internal/cctz:zoneinfo. This eliminates any hidden dependency on /usr/share/zoneinfo, and enables the upcoming deletion of the embedded internal/zoneinfo.inc data from //absl/time:test_util. PiperOrigin-RevId: 488372848 Change-Id: If1c8525b5ca4348cb2fc3b4760819f791b6e9725Abseil Team committed
-
- 11 Nov, 2022 2 commits
-
-
Previously, ~raw_hash_set() would change *this to have the same representation as an empty hash table. This is unnecessary since nobody should be touching a destroyed hash table, and prevents future optimizations/changes that might not be able to preserve this behavior. PiperOrigin-RevId: 487899950 Change-Id: I2d4470677bdd411c2e48ef511187e39f4e7fc2f4
Abseil Team committed -
PiperOrigin-RevId: 487707178 Change-Id: Ie8f57a6327a6460ab37566b8b6f56d470f6dd2dc
Derek Mauro committed
-
- 10 Nov, 2022 5 commits
-
-
This fixes the build on arm64 macOS. Note that hardware acceleration is not yet enabled on arm64 when not running under Linux. Addresses the report from https://github.com/abseil/abseil-cpp/commit/1687dbf814eceb93de2d93f91b31acaab404091c#commitcomment-89529264 PiperOrigin-RevId: 487655295 Change-Id: I168dfc863c960d0b694b26dfcb85ff0fd0e95a1e
Derek Mauro committed -
- Add assertions that the iterators are either (a) from the same container or (b) both default constructed. Standard says: "The domain of == for forward iterators is that of iterators over the same underlying sequence. However, value-initialized iterators may be compared and shall compare equal to other value-initialized iterators of the same type." - [reference](https://eel.is/c++draft/forward.iterators#2). - Also optimize IsEndIterator a bit. PiperOrigin-RevId: 487617518 Change-Id: Iefba5c3bc8caa93954671793e6929e22f419c298
Evan Brown committed -
PiperOrigin-RevId: 487592054 Change-Id: Iff24f6e2a304fbc85843f10417fc3343c41333da
Derek Mauro committed -
deprecation of ATOMIC_FLAG_INIT. Another option would have been to use macros to only initialize std::atomic_flag before C++20, but I decided to use one compilation path instead. The major difference between std::atomic_flag and std::atomic<bool> is that the former is guaranteed to be lock-free, but we already assume std::atomic<bool> is lock-free in many places. https://en.cppreference.com/w/cpp/atomic/atomic_flag PiperOrigin-RevId: 487397075 Change-Id: I3f1c539ec8b2ca58547282e69ed73e93243e8efe
Derek Mauro committed -
PiperOrigin-RevId: 487394692 Change-Id: I55e9b57055483dc921e9773c3643ea9be4f9bdf6
Abseil Team committed
-
- 09 Nov, 2022 3 commits
-
-
This implementation can advantage of hardware acceleration available on common CPUs when using GCC and Clang. A future update may enable this on MSVC as well. PiperOrigin-RevId: 487327024 Change-Id: I99a8f1bcbdf25297e776537e23bd0a902e0818a1
Derek Mauro committed -
We check for comparisons of swisstable iterators from different heap allocations, which can indicate either iterators from different containers or that there was a rehash between when the iterators were initialized. PiperOrigin-RevId: 487304602 Change-Id: I5c596c5ea07948d66e048f99937f9032a630344f
Evan Brown committed -
PiperOrigin-RevId: 487292771 Change-Id: I2454e28fe91017fb2954a4ad194712fcafe893d2
Abseil Team committed
-
- 08 Nov, 2022 1 commit
-
-
PiperOrigin-RevId: 486867412 Change-Id: Ib54b1acaf1ea57f8f377c87261d7d52e9a48784f
Andy Getzendanner committed
-
- 07 Nov, 2022 3 commits
-
-
Factor out the internal helper AppendTruncated, which is used and redefined in a couple places, plus several more that have yet to be released. PiperOrigin-RevId: 486759835 Change-Id: Ib1b24f287f856ca38b691fbce7e747f0f5a34626
Andy Getzendanner committed -
Note that multi{set,map}::emplace doesn't specify in which order the new element is inserted if there are equivalent keys in the table, whereas emplace_hint specifies that the new element must be before the hint if possible. https://en.cppreference.com/w/cpp/container/multiset/emplace https://en.cppreference.com/w/cpp/container/multiset/emplace_hint Also refactor to rely on IsAssertEnabled instead of checking for NDEBUG. PiperOrigin-RevId: 486733450 Change-Id: Ie90d33c584a6caccd8301ad6fc0396234dbbfac4Evan Brown committed -
In order for Condition to work on Microsoft platforms, it has to store pointers to methods that are larger than we usually expect. MSVC pointers to methods from class hierarchies that employ multiple inheritance or virtual inheritance are strictly larger than pointers to methods in class hierarchies that only employ single inheritance. This change introduces an opaque declaration of a class, which is not fulfilled. This declaration is used to calculate the size of the Condition method pointer allocation. Because the declaration is of unspecified inheritance, the compiler is forced to use a conservatively large allocation, which will thereby accommodate all method pointer sizes. Because the `method_` and `function_` callbacks are only populated in mutually exclusive conditions, they can be allowed to take up the same space in the Condition object. This change combines the `method_` and `function_` fields and renames the new field to `callback_`. The constructor logic is updated to reflect the new field. PiperOrigin-RevId: 486701312 Change-Id: If06832cc26f27d91e295183e44dc29440af5f9db
Abseil Team committed
-
- 06 Nov, 2022 1 commit
-
-
PiperOrigin-RevId: 486480813 Change-Id: I05292dd0550dfb4130bbe47eafa96ff5b58c040b
Michael Diamond committed
-
- 04 Nov, 2022 2 commits
-
-
PiperOrigin-RevId: 486227733 Change-Id: If492d715e5758971cf7bd0ccd748b47b1424a3c7
Andy Getzendanner committed -
PiperOrigin-RevId: 486023797 Change-Id: I0b82754fd40c2d6fb451f304aaf1d795eed8d009
Andy Getzendanner committed
-
- 03 Nov, 2022 4 commits
-
-
PiperOrigin-RevId: 485921596 Change-Id: I453801e3d7b4a60ecedf173d448c8b6f51cb0b2e
Derek Mauro committed -
PiperOrigin-RevId: 485886212 Change-Id: Ic7a710913f8376d07b9bdeb987d007ec04e48465
Copybara-Service committed -
PiperOrigin-RevId: 485885633 Change-Id: Idfaf6ce22a9421fe05ae38029c8a68b720ce50ba
Copybara-Service committed -
PiperOrigin-RevId: 485868656 Change-Id: I09d70adc570b6b79a80c29f89601186aab390032
Derek Mauro committed
-