violet
c9809c7c5a
Bug 1469155 - Add overloading for std::nullptr_t for RangedPtr equality operator r=froydnj
...
Templated pointer can't match |nullptr|, we should add overloading for
std::nullptr_t specifically to be able to support |nullptr|.
Differential Revision: https://phabricator.services.mozilla.com/D24925
--HG--
extra : moz-landing-system : lando
2019-03-26 19:10:24 +00:00
Tooru Fujisawa
72222a022c
Bug 1524755 - Use ptrdiff_t instead in RangedPtr. r=jwalden
2019-02-08 12:13:23 +09:00
Sylvestre Ledru
265e672179
Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
...
# ignore-this-changeset
--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Kris Maglione
2bbae5374b
Bug 1470365: Part 1 - Add a compact, read-only, shared-memory string map class. r=erahm
...
This class implements a shared memory key-value store that fits into a single
memory mapped segment. All of the runtime data for its instances are stored in
the shared memory region, which means that memory overhead for each instance
in each process is only a few bytes.
Importantly, the key and value strings returned by this class are also
pointers into the shared memory region, which means that once an instance is
created, its memory cannot be unmapped until process shutdown.
For the uses I intend to put it to, this is a reasonable constraint. If we
need to use it for shorter-lived maps in the future, we can add an option to
return non-literal dependent strings that will be copied if they need to be
kept alive long term.
MozReview-Commit-ID: 5BwAaDsb7HS
--HG--
extra : rebase_source : b472fe628018f88a2c4d6b3de4b7143aeca55e14
extra : absorb_source : 5cdeb568cfd2b4a5a767191402e699e61e653b3b
2018-06-29 22:50:41 -07:00
Jeff Walden
c8b800005a
Bug 1319740 - Parametrize ComputeSingleDisplayName based on the character type of the key string, and iterate through the string using iterators, not using null-termination. r=arai
...
--HG--
extra : rebase_source : 1c11bd11300dd467e8579faec677d1b7cb9f2e1b
2016-12-02 14:02:36 -08:00
Boris Chiou
c329f132b7
Bug 1276573 - Add a new constructor for Range<T>. r=Waldo
...
These new constructor accepts two RangedPtr<T> arguments.
MozReview-Commit-ID: 8a3bYserLMr
--HG--
extra : rebase_source : 216de17b7a51783fe48d604b432d4dc7df6ad6eb
2016-05-30 13:58:13 +08:00
Boris Chiou
acc84881a2
Bug 1277740
- Add const to RangedPtr<T>::operator+ and operator-. r=Waldo
...
MozReview-Commit-ID: FlHmq5eh5ph
--HG--
extra : rebase_source : 7e8939f0a9531426fa8fa742351d47f1d2351e72
2016-06-03 12:16:33 +08:00
Boris Chiou
4b68d2e1e4
Bug 1276550 - Support operator-> for RangedPtr. r=Waldo
...
MozReview-Commit-ID: EiOfo7ly34P
--HG--
extra : rebase_source : 6acbd9b3b6681f5c777e779713a21e8f808b89bf
2016-05-30 11:55:57 +08:00
Ehsan Akhgari
91324a3c5a
Bug 1188204 - Fix more constructors in MFBT; r=froydnj
2015-07-28 12:24:39 -04:00
Birunthan Mohanathas
1b10c9d731
Bug 1120796 - Part 2: Replace ConvertibleToBool hackarounds with explicit bool operators. r=Waldo
2015-02-03 18:52:36 +02:00
Masatoshi Kimura
bf312ad056
Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo
2015-01-11 11:34:52 +09:00
Ehsan Akhgari
4354953b4f
Bug 1118486 - Part 1: Use `= delete` instead of MOZ_DELETE directly; r=Waldo
...
Most of this patch (with the exception of dom/bindings/Codegen.py) was
generated by the following bash script:
#!/bin/bash
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "*/.git*" \
! -wholename "obj-*" \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_DELETE '= delete'
2015-01-08 23:19:05 -05:00
Nicholas Nethercote
2a0942be41
Bug 1036789 - Convert the third quarter of MFBT to Gecko style. r=Ms2ger.
...
--HG--
extra : rebase_source : 668cd394806203ddfa34bd4f226335ff26c846b5
2014-07-10 19:10:17 -07:00
Jeff Walden
90c1e0bc05
Bug 946382 - Make RangedPtr::operator* assert that the pointer is in its range. r=Ms2ger
...
--HG--
extra : rebase_source : 86fcafaa38f9cd9dbf4b299a39e854e9da51c33a
2013-12-04 11:10:25 -08:00
Birunthan Mohanathas
3440613a39
Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo
...
--HG--
rename : mfbt/Util.h => mfbt/ArrayUtils.h
2013-12-08 21:52:54 -05:00
Birunthan Mohanathas
9e65e2904f
Bug 784739 - Switch from NULL to nullptr in mfbt/. r=jwalden
...
--HG--
extra : rebase_source : 090706fa9d97854fe3071adf037a09d914a0854f
2013-07-25 16:31:48 -07:00
Ryan VanderMeulen
c5cf7535b6
Backed out 3 changesets (bug 896124, bug 784739, bug 894026) for Windows checktest orange on a CLOSED TREE.
...
Backed out changeset 631b3d5d54f4 (bug 896124)
Backed out changeset 5e1dd28ede5d (bug 894026)
Backed out changeset c10c0a6270ec (bug 784739)
2013-07-26 00:08:51 -04:00
Birunthan Mohanathas
0c642c695d
Bug 784739 - Switch from NULL to nullptr in mfbt/. r=jwalden
2013-07-25 16:31:48 -07:00
Ms2ger
51f391870b
Bug 896341 - Update include guards and modelines in MFBT; r=Waldo
2013-07-24 09:41:39 +02:00
Nicholas Nethercote
d4951cc6b8
Bug 563195: Avoid triggering -Wshadow warnings in mfbt/. r=Waldo
2013-02-17 22:56:32 -08:00
Ehsan Akhgari
c9399f56f0
Rewrite RangedPtr's constructor accepting a C-style array in C++, no bug, rs=Waldo
...
This will let the compiler correctly deduce N without making the
caller explicitly pass it in.
2013-01-14 19:48:42 -05:00
Terrence Cole
b9cfbdf893
Bug 811060 - Implement mozilla::Range; r=Waldo
...
--HG--
extra : rebase_source : a303294de705fca72eb31f7b5c7db787d0bc7260
2012-11-12 16:37:33 -08:00
Terrence Cole
c3325c6297
Bug 799252 - Remove SkipRoots in jsstr.cpp; r=Waldo
2012-10-16 16:30:02 -07:00
Terrence Cole
9fd0191df4
Bug 798624 - Specialize low-level character access to JSStableString; r=luke, rs=Waldo
...
Implements JSStableString::chars() and pushes StableCharPtr into the interface
at several key choke-points. This will solidly enforce the requirement that we
have uninlined jschar*s in places that we may GC with a jschar* on the stack.
--HG--
extra : rebase_source : 122785b474af371ed22d43a6bfcb600c05440405
2012-10-08 15:04:36 -07:00
Terrence Cole
f56b69f5b1
Backout 754a1efb5b37 for bustage on a CLOSED TREE
2012-10-08 15:42:39 -07:00
Terrence Cole
8d60e1a402
Bug 798624 - Specialize low-level character access to JSStableString; r=luke, rs=Waldo
...
Implements JSStableString::chars() and pushes StableCharPtr into the interface
at several key choke-points. This will solidly enforce the requirement that we
have uninlined jschar*s in places that we may GC with a jschar* on the stack.
--HG--
rename : content/html/content/test/test_bug797113.html => content/html/content/test/test_bug780993.html
extra : rebase_source : 19b24e3decfc37c7387ea941233aec8239550927
2012-10-08 15:04:36 -07:00
Jeff Walden
986ff95100
Style patrol to make everything conform to mfbt/STYLE. No bug, r=sparky
2012-06-03 20:36:43 -07:00
Gervase Markham
82ff7027aa
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Jeff Walden
eaa4a32656
Add introductory comments to the files in mfbt/ that aren't copied from elsewhere, to facilitate easier MXR directory skimming. No bug, r=lumpy
...
--HG--
extra : rebase_source : dd834c64e625a0184b64d13e2a2e6fd8960ca832
2011-12-28 10:48:54 -06:00
Jeff Walden
05dcc6d231
Bug 712129 - Move assertion code into a new mfbt/Assertions.h header. r=luke
...
--HG--
extra : rebase_source : 6587b6aa4180493c48b0663bc627543020a21deb
2011-12-19 14:28:35 -05:00
Jeff Walden
d2d9341b8a
Bug 704127 - Move C++ attribute support out of mozilla/Types.h and into mozilla/Attributes.h so that it can be used by code that's not yet compatible with the full mfbt experience. r=cjones
...
--HG--
extra : rebase_source : 7b653358a73f222c055f5139e33ca470475f88c9
2011-11-20 12:22:51 -08:00
Jeff Walden
0dc3caec01
Bug 701183 - Make MOZ_DELETE use deleted function syntax in gcc when it's possible to do so without causing a warning. r=cjones
...
--HG--
extra : rebase_source : 6f452c9cc9dcdc772991ee1056975bf7b0b4bb5b
2011-11-10 14:19:28 -08:00
Jeff Walden
94a29910cd
Add a RangedPtr constructor accepting an array as a shorthand for RangedPtr(arr, N). rs=luke
2011-06-07 13:25:36 -07:00
Jeff Walden
661571d30c
Bug 662001 - Move js::RangeCheckedPointer<T> to mozilla::RangedPtr<T>, make it no longer implicitly convert to T*, and adjust users accordingly. r=cjones
2011-06-06 11:02:34 -07:00