summaryrefslogtreecommitdiff
path: root/third_party/base/stl_util.h
AgeCommit message (Collapse)Author
2018-07-02Add pdfium::Vector2D<>()Tom Sepez
Many of the FX_Alloc's that have not been converted to std::vector are using FX_Alloc2D and the safe math it performs under the covers. Make an equivalent function for returning a vector to avoid burdening callers with the safe math equivalents. Use it in one place. Change-Id: Ie4a280351b7370b755f2a1928f8b2d84fe007c03 Reviewed-on: https://pdfium-review.googlesource.com/36770 Commit-Queue: Tom Sepez <tsepez@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org>
2017-04-25Fix a self-inclusion in third_party/base/stl_util.h.Lei Zhang
Change-Id: I7a2fc956236005fca4848bd2be6db4585bc4e7d7 Reviewed-on: https://pdfium-review.googlesource.com/4477 Commit-Queue: dsinclair <dsinclair@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org>
2017-04-20Take ContainsValue() change from base stl_util.hTom Sepez
Allows us to apply this same predicate onto ordinary arrays. Change-Id: I917be09ed5e55167657c9af97f45f2ea2dbc6ab4 Reviewed-on: https://pdfium-review.googlesource.com/4270 Commit-Queue: Tom Sepez <tsepez@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org>
2017-03-17Add pdfium::clamp() as a placeholder for std::clamp().chromium/3046Lei Zhang
Ue it to fix a typo as well. BUG=pdfium:634 Change-Id: I2d686242ffb841aedc2fae6a3cf7a00bea667404 Reviewed-on: https://pdfium-review.googlesource.com/3113 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org>
2017-03-15Add IndexInBounds() convenience routine.Tom Sepez
Avoid writing |Type| in CollectionSize<Type>() so that index type can change without rewriting conditions. Change-Id: I40c94ca39148b379908760ba9b861114b88af7bb Reviewed-on: https://pdfium-review.googlesource.com/3056 Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org>
2016-11-07Force compiler to deduce src type for checked_cast<dst, src>.tsepez
Otherwise, we might be silently doing an unsafe cast before applying the check if the actual argument doesn't match the exact src type. Review-Url: https://codereview.chromium.org/2484953003
2016-09-12Make CFX_Obeservable::Observer into a pointer-ish type;tsepez
This may be a better design because it avoids having a level of indirection that the Observer required. Review-Url: https://codereview.chromium.org/2326763002
2016-08-19Introduce pdfium::FakeUniquePtr for keys to sets of unique ptrs.tsepez
Review-Url: https://codereview.chromium.org/2262473002
2016-03-09Move ScopedSetInsertion to third_party/base/stl_util.hTom Sepez
Also move ScopedFileStream, since it isn't specific to the parser, and belongs with the fxcrt object it manipulates. R=ochang@chromium.org Review URL: https://codereview.chromium.org/1780063003 .
2016-02-08Remove CFX_PtrArray from xfa/include/fwlTom Sepez
Fix IWYU in stl_util.h R=thestig@chromium.org Review URL: https://codereview.chromium.org/1672283002 .
2016-01-25Merge to XFA: Remove CFX_SegmentedArray use from master.Tom Sepez
Unfortunately, it is still used on the xfa/ side, so exclude it only for non-xfa builds. Original Review URL: https://codereview.chromium.org/1618273004 . (cherry picked from commit c64e4007ee4561ec2ed3ce986191caf9b024ef55) TBR=ochang@chromium.org TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1631863003 .
2015-12-22Merge to XFA: Start using allowed C++11 features.Lei Zhang
TBR=dml@google.com, thakis@chromium.org Review URL: https://codereview.chromium.org/1544923002 . Review URL: https://codereview.chromium.org/1545823002 . (cherry picked from commit ba2586d2c0a50df14aa2549a0a841e1d4b9af4b6) (cherry picked from commit 87f7d29531dabfd66e547a6be31a08272ff631d5) Review URL: https://codereview.chromium.org/1542213002 .
2015-12-22Merge to XFA: Add ContainsKey() and ContainsValue() and use them where ↵Lei Zhang
appropriate. TBR=ochang@chromium.org Review URL: https://codereview.chromium.org/1540263003 . (cherry picked from commit 1fc92867ca53f0fba4272fbee3814d844f487495) Review URL: https://codereview.chromium.org/1542193002 .
2015-10-09Merge to XFA: Sanitize CJBig2_SymbolDict's memory usage.Lei Zhang
- Use std::vector<JBig2ArithCtx> instead of storing pointers to arrays. - Make CJBig2_SymbolDict's members private with accessors. - Use std::vector<JBig2ArithCtx> in related places. - Steal Chromium's vector_as_array() and use it as an adaptor as needed. BUG=514891 TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1388203003 . (cherry picked from commit 3acb1ef909a22368507ed13817c4988c818e3aee) Review URL: https://codereview.chromium.org/1401533004 .