History of file src/OFMapTable.m at check-in 13c7749eedc5c1579c08afc830c1d9326b9ee44283ce218c6632f6a87f695bed
2024-04-03
| ||
02:16 | Change license to LGPLv3 only file: [90cee4067e] check-in: [7413a728a7] user: js, branch: trunk, size: 17170 [annotate] [blame] [check-ins using] [diff] | |
2024-02-18
| ||
13:53 | OFMapTable: Improve enumeration mutation detection file: [77fd4c4f10] check-in: [ab14af79d2] user: js, branch: trunk, size: 16962 [annotate] [blame] [check-ins using] [diff] | |
2024-02-12
| ||
19:55 | OFMapTable: Fix type mismatch on OFHashSeed file: [3e827255d3] check-in: [26ea8fefec] user: js, branch: trunk, size: 16963 [annotate] [blame] [check-ins using] [diff] | |
2024-01-02
| ||
17:17 | Update copyright file: [810b88a011] check-in: [26ddd2e4e4] user: js, branch: trunk, size: 16958 [annotate] [blame] [check-ins using] [diff] | |
2023-07-19
| ||
21:00 | OFMapTable: Change the rotation when resizing file: [00903dc5ce] check-in: [cdc49aa375] user: js, branch: trunk, size: 16958 [annotate] [blame] [check-ins using] [diff] | |
2023-01-06
| ||
09:04 | Update copyright file: [fd0add4a94] check-in: [8939cbdb52] user: js, branch: trunk, size: 16601 [annotate] [blame] [check-ins using] [diff] | |
2022-11-16
| ||
01:27 |
Add OFAssert()
This uses the same format as OFEnsure(). file: [2885d27493] check-in: [c86b8f10f0] user: js, branch: trunk, size: 16601 [annotate] [blame] [check-ins using] [diff] | |
2022-09-12
| ||
14:34 | Either restrict subclassing or reserve ivars file: [61602c79fe] check-in: [c40a295629] user: js, branch: trunk, size: 16622 [annotate] [blame] [check-ins using] [diff] | |
2022-02-12
| ||
07:46 | Update copyright file: [155910f8b1] check-in: [1a86b8175b] user: js, branch: trunk, size: 16598 [annotate] [blame] [check-ins using] [diff] | |
2021-12-24
| ||
11:06 |
OFMapTable: Fix rotating with the wrong size
This essentially made it a shift rather than a rotate, sometimes | |
2021-04-30
| ||
21:23 | Make OFHashSeed private file: [37fa19bf82] check-in: [39863b3503] user: js, branch: trunk, size: 16659 [annotate] [blame] [check-ins using] [diff] | |
2021-04-25
| ||
11:05 | A few last renames file: [6075b5b12b] check-in: [27103855c2] user: js, branch: new-naming-convention, size: 16625 [annotate] [blame] [check-ins using] [diff] | |
2021-04-19
| ||
21:07 | Rename all struct of_* file: [963c916eb5] check-in: [c81086beeb] user: js, branch: new-naming-convention, size: 16451 [annotate] [blame] [check-ins using] [diff] | |
2021-04-18
| ||
15:55 | Rename all functions in macros.h file: [8cb89e6a68] check-in: [7392685ffc] user: js, branch: new-naming-convention, size: 16469 [annotate] [blame] [check-ins using] [diff] | |
13:24 | Rename remaining functions in OFObject.h file: [a5b94365d5] check-in: [d9f8960fc5] user: js, branch: new-naming-convention, size: 16437 [annotate] [blame] [check-ins using] [diff] | |
2021-04-17
| ||
22:45 | Rename of_(re)alloc and add OFFreeMemory file: [717a250a20] check-in: [498074dab9] user: js, branch: new-naming-convention, size: 16443 [annotate] [blame] [check-ins using] [diff] | |
14:21 | of_map_table_functions_t -> OFMapTableFunctions file: [878b273561] check-in: [943d9bd388] user: js, branch: new-naming-convention, size: 16362 [annotate] [blame] [check-ins using] [diff] | |
03:21 | Rename all blocks file: [69ee51ce08] check-in: [c4e0e56fa3] user: js, branch: new-naming-convention, size: 16426 [annotate] [blame] [check-ins using] [diff] | |
02:43 | Rename of_fast_enumeration_state_t file: [f62fe0ab1f] check-in: [ed3b07591c] user: js, branch: new-naming-convention, size: 16442 [annotate] [blame] [check-ins using] [diff] | |
2021-03-08
| ||
00:04 | Make GCC happy again file: [8788cb21e4] check-in: [eb328735f2] user: js, branch: trunk, size: 16447 [annotate] [blame] [check-ins using] [diff] | |
2021-03-07
| ||
20:25 | *.m: Fold methods into one line where it fits file: [79fa6ef127] check-in: [1b82d3bf4f] user: js, branch: trunk, size: 16447 [annotate] [blame] [check-ins using] [diff] | |
02:36 |
Style change: Allow more than 1 argument per line
This is only migrating some places, others will be migrated as they are | |
2021-01-02
| ||
22:04 | Update copyright file: [b3889238ba] check-in: [374e1a1bfa] user: js, branch: trunk, size: 16309 [annotate] [blame] [check-ins using] [diff] | |
2020-11-14
| ||
12:23 |
Rename of_malloc and of_calloc
The new names should be more accurate. file: [6adf8ae2bb] check-in: [627511b032] user: js, branch: trunk, size: 16398 [annotate] [blame] [check-ins using] [diff] | |
2020-11-05
| ||
02:27 | Further reduce usage of -[allocMemoryWithSize:] file: [bb1c57067e] check-in: [da1fb6b21c] user: js, branch: trunk, size: 16387 [annotate] [blame] [check-ins using] [diff] | |
2020-10-10
| ||
14:27 |
OFObject: Change type of -[hash] to unsigned long
The internal hash is still 32 bit in most places, but this way, it is at | |
2020-07-12
| ||
10:35 | Split of_random() into of_random{16,32,64}() file: [ec26b7463a] check-in: [14f05841a3] user: js, branch: trunk, size: 16442 [annotate] [blame] [check-ins using] [diff] | |
2020-06-28
| ||
15:03 | Use OF_DIRECT(_MEMBERS) where appropriate file: [8ca8ae429a] check-in: [b6cb3addd0] user: js, branch: trunk, size: 16438 [annotate] [blame] [check-ins using] [diff] | |
2020-01-02
| ||
01:51 | Update copyright file: [df5b78cbf7] check-in: [c7f0229795] user: js, branch: trunk, size: 16392 [annotate] [blame] [check-ins using] [diff] | |
2019-06-19
| ||
00:45 |
OFEnumerator: Remove -[reset]
It's not very useful and is a problem for the Foundation bridge, as | |
2019-06-17
| ||
02:33 | Remove underscores from class names file: [916c94f96d] check-in: [17d57e01ff] user: js, branch: trunk, size: 16719 [annotate] [blame] [check-ins using] [diff] | |
2019-01-03
| ||
19:13 | Update copyright file: [566bcf99cb] check-in: [0509d7a844] user: js, branch: trunk, size: 16720 [annotate] [blame] [check-ins using] [diff] | |
2018-07-28
| ||
16:48 |
macros.h: Add of_random()
This does *NOT* provide cryptographically secure randomness! file: [021ca59238] check-in: [a2a06d372a] user: js, branch: trunk, size: 16714 [annotate] [blame] [check-ins using] [diff] | |
2018-06-03
| ||
23:31 | Add -[OFObject allocZeroedMemoryWithSize:(count:)] file: [bcee3b5d39] check-in: [aacb5897a0] user: js, branch: trunk, size: 16960 [annotate] [blame] [check-ins using] [diff] | |
2018-01-03
| ||
19:49 | Update copyright notice file: [bdc38c2ac6] check-in: [7e5c81e186] user: js, branch: trunk, size: 17056 [annotate] [blame] [check-ins using] [diff] | |
2017-11-11
| ||
23:27 | Small optimization for -[isEqual:] file: [1089d5714e] check-in: [526feacebc] user: js, branch: trunk, size: 17033 [annotate] [blame] [check-ins using] [diff] | |
2017-10-17
| ||
00:33 |
Do not use implicit method return types
Instead, explicitly declare them, as OF_ASSUME_NONNULL_{BEGIN,END} does | |
2017-10-11
| ||
20:59 | Fix shadowed variables and enable -Wshadow file: [1517e60617] check-in: [836314f39a] user: js, branch: 0.90, size: 16849 [annotate] [blame] [check-ins using] [diff] | |
20:53 | Fix shadowed variables and enable -Wshadow file: [2c59c12f0d] check-in: [00476e4430] user: js, branch: trunk, size: 16922 [annotate] [blame] [check-ins using] [diff] | |
2017-09-28
| ||
23:02 | Enable -Wnullable-to-nonnull-conversion and adjust file: [73724a7b07] check-in: [2de9660312] user: js, branch: trunk, size: 16914 [annotate] [blame] [check-ins using] [diff] | |
2017-05-21
| ||
21:28 |
Prefix private methods with of_ instead of OF_
This matches Apple's style. file: [9a08c57256] check-in: [6b77a5dd8b] user: js, branch: trunk, size: 16841 [annotate] [blame] [check-ins using] [diff] | |
2017-05-08
| ||
21:37 | Add OF_DESIGNATED_INITIALIZER & OF_METHOD_FAMILY file: [654a4184b9] check-in: [469a496cd2] user: js, branch: trunk, size: 16841 [annotate] [blame] [check-ins using] [diff] | |
2017-05-07
| ||
20:10 |
Small code style change
Casts are now written like types in variable declarations. file: [0faf59214b] check-in: [4af49a13c3] user: js, branch: trunk, size: 16814 [annotate] [blame] [check-ins using] [diff] | |
2017-01-09
| ||
17:36 |
Update copyright
Forgot to add 2017, even though I already did quite some changes in | |
2016-06-04
| ||
18:49 |
OFMapTable: Rename valueForKey to objectForKey
The reason for this is that -[valueForKey:] could be confused with | |
2016-02-21
| ||
15:37 | Make use of C99-style for loops file: [d08b0754f8] check-in: [e0b9167693] user: js, branch: trunk, size: 16668 [annotate] [blame] [check-ins using] [diff] | |
2016-01-03
| ||
00:43 |
Update copyright
While at it, also update the mail address. file: [32a1b1967d] check-in: [cec0f072f8] user: js, branch: 0.8, size: 16797 [annotate] [blame] [check-ins using] [diff] | |
00:41 |
Update copyright
While at it, also update the mail address. file: [0f58c455bb] check-in: [2a27cf3000] user: js, branch: trunk, size: 16694 [annotate] [blame] [check-ins using] [diff] | |
2015-11-29
| ||
14:23 |
Clean up class extensions
Now that we can require GCC >= 4.6, we no longer need to fall back to | |
11:43 |
Make properties a requirement and clean up code
This increases the required GCC version from 4.0 to 4.6 (exception: | |
2015-06-28
| ||
16:16 | Extremely minor API inconsistency fix file: [ccd71cdedf] check-in: [1b1db13483] user: js, branch: trunk, size: 16793 [annotate] [blame] [check-ins using] [diff] | |
2015-04-11
| ||
12:56 | OFMapTable.m: Fix a missing include file: [101f595560] check-in: [dc43cd0d1b] user: js, branch: trunk, size: 16797 [annotate] [blame] [check-ins using] [diff] | |
2015-01-03
| ||
20:57 | Update copyright file: [b0de075c30] check-in: [cfd374b906] user: js, branch: trunk, size: 16777 [annotate] [blame] [check-ins using] [diff] | |
2014-06-21
| ||
21:43 |
Move all macros from OFObject.h to macros.h
This means that OFObject.h imports macros.h now, making it unnecessary | |
2014-05-15
| ||
04:06 | Remove usage of empty initializer extension file: [05916c8969] check-in: [f178d11592] user: js, branch: trunk, size: 16791 [annotate] [blame] [check-ins using] [diff] | |
01:50 |
Don't define _*_SOURCE
Instead, just define _GNU_SOURCE when __GLIBC__ is defined. After all, | |
2014-04-06
| ||
14:40 | runtime/hashtable.m: Add support for deletion file: [8840bb8cc2] check-in: [c2d9134d88] user: js, branch: trunk, size: 16809 [annotate] [blame] [check-ins using] [diff] | |
2014-02-13
| ||
23:26 |
Use -std=c11 instead of -std=gnu11
Not using -std=gnu11 means _GNU_SOURCE does not get defined anymore, Additionally, this adds of_strdup in macros.h, as strdup is an | |
2014-01-04
| ||
00:24 | Update copyright. file: [9d63848c2d] check-in: [3b97fc3cd9] user: js, branch: trunk, size: 16721 [annotate] [blame] [check-ins using] [diff] | |
2013-12-05
| ||
17:48 |
Make coding style consistent.
A file documenting the coding style will be written soon. This will | |
2013-12-01
| ||
12:12 | Make OFMapTableEnumeratorWrapper private. file: [7ccafaf30f] check-in: [d7b691c402] user: js, branch: trunk, size: 16727 [annotate] [blame] [check-ins using] [diff] | |
11:51 | OFMapTable: More overflow checks. file: [484e7b21c8] check-in: [6085d4f6a4] user: js, branch: trunk, size: 16695 [annotate] [blame] [check-ins using] [diff] | |
2013-11-23
| ||
01:27 | Add OF_UNRECOGNIZED_SELECTOR. file: [74b5d78ed2] check-in: [6e19bd47ee] user: js, branch: trunk, size: 16595 [annotate] [blame] [check-ins using] [diff] | |
01:12 | Add OF_INVALID_INIT_METHOD. file: [3c5a2f693b] check-in: [35dafd5c57] user: js, branch: trunk, size: 16639 [annotate] [blame] [check-ins using] [diff] | |
2013-10-29
| ||
09:37 | Add a missing (instancetype). file: [08236d7fb2] check-in: [52efbc4b8f] user: js, branch: trunk, size: 16815 [annotate] [blame] [check-ins using] [diff] | |
2013-08-15
| ||
19:00 | Move private methods into private headers. file: [1f413086d9] check-in: [1d7a1cbca0] user: js, branch: trunk, size: 16801 [annotate] [blame] [check-ins using] [diff] | |
2013-08-13
| ||
10:39 | Add a few more instancetypes. file: [162f4f232a] check-in: [73ae6fa60f] user: js, branch: trunk, size: 16415 [annotate] [blame] [check-ins using] [diff] | |
2013-08-10
| ||
23:12 | Add -[OFMutableDictionary removeAllObjects]. file: [360a62d844] check-in: [aae02e7970] user: js, branch: trunk, size: 16401 [annotate] [blame] [check-ins using] [diff] | |
2013-06-22
| ||
12:12 |
Rework exceptions.
This mostly removes the argument for the class in which the exception This also removes a few other arguments which were not too helpful. In | |
2013-05-04
| ||
10:05 | OFMapTable: Minor corrections. file: [e861c4b211] check-in: [8a194de51c] user: js, branch: trunk, size: 16124 [annotate] [blame] [check-ins using] [diff] | |
2013-03-30
| ||
20:07 | Improve code readability. file: [9fc4f60d3b] check-in: [57a6e8ef79] user: js, branch: trunk, size: 16120 [annotate] [blame] [check-ins using] [diff] | |
2013-03-08
| ||
22:44 |
Document the block types.
This also removes "bool *stop" from some blocks where it does not make | |
2013-03-04
| ||
17:20 |
Replace BOOL with bool.
The only places where BOOL is left are those where they are required by | |
2013-02-18
| ||
11:07 |
Add -[OFMutableDictionary initWithCapacity:].
This was already implemented in OFDictionary_hashtable for internal | |
2013-02-12
| ||
18:22 | Prefix all ivars with an underscore. file: [212223cd50] check-in: [e40729d406] user: js, branch: trunk, size: 16041 [annotate] [blame] [check-ins using] [diff] | |
2013-02-05
| ||
22:24 | Move abort() to make old GCCs happy. file: [01662f5402] check-in: [737a82e1a4] user: js, branch: trunk, size: 15886 [annotate] [blame] [check-ins using] [diff] | |
2013-01-12
| ||
20:53 | Clean up the feature #ifdef mess. file: [299f6d68b0] check-in: [b8ce2359f3] user: js, branch: trunk, size: 15886 [annotate] [blame] [check-ins using] [diff] | |
2013-01-09
| ||
22:24 | Update copyright. file: [996b96d265] check-in: [813c00ccf0] user: js, branch: trunk, size: 15892 [annotate] [blame] [check-ins using] [diff] | |
2013-01-03
| ||
22:26 |
OFMapTable: Rotate hashes randomly.
This makes the map table use the full range of the hash and not only the | |
2012-12-22
| ||
15:37 | Add -[doesNotRecognizeSelector:]. file: [1a1f8d234d] check-in: [917ce5754c] user: js, branch: trunk, size: 15595 [annotate] [blame] [check-ins using] [diff] | |
2012-12-07
| ||
13:57 |
Revert several OFHashMap related commits.
This reverts: It turned out that these were slowing down all classes based on | |
2012-12-06
| ||
11:00 |
OFMapTable: Rotate hash by a random number of bits
By rotating the hash by a random number of bits, an attacker needs to | |
11:00 | Add of_random(). file: [ecdbc341ea] check-in: [f675979cf0] user: js, branch: trunk, size: 16069 [annotate] [blame] [check-ins using] [diff] | |
2012-12-05
| ||
21:28 | OFMapTable: Reseed on resize. file: [06127d91bb] check-in: [f7018aedf9] user: js, branch: trunk, size: 16307 [annotate] [blame] [check-ins using] [diff] | |
2012-12-04
| ||
09:59 |
Add a per-hashtable seed.
This should make it impossible to retrieve of_hash_seed by inserting | |
2012-12-01
| ||
17:50 | OFSet_hashtable: Store in OFMapTable. file: [c18a26ad1f] check-in: [ed438b979d] user: js, branch: trunk, size: 15781 [annotate] [blame] [check-ins using] [diff] | |
17:26 | Added: Add OFMapTable. file: [e82f78e00b] check-in: [6f081c14f9] user: js, branch: trunk, size: 15016 [annotate] [blame] [check-ins using] | |