History of file src/OFObject.m at check-in b489d6188d62e375
2024-10-27
| ||
18:38 | Remove nullable in .m files file: [936405dd93] check-in: [7d1275cb49] user: js, branch: trunk, size: 31512 [annotate] [blame] [check-ins using] [diff] | |
2024-04-29
| ||
21:42 | Properly hide private symbols file: [8a5a49c0ca] check-in: [f16bccc7b3] user: js, branch: trunk, size: 31532 [annotate] [blame] [check-ins using] [diff] | |
2024-04-21
| ||
19:55 | Add missing NTAPI for RtlGenRandom file: [aac1ccf77b] check-in: [f61f430bfb] user: js, branch: trunk, size: 31511 [annotate] [blame] [check-ins using] [diff] | |
19:15 | Use RtlGenRandom on Windows if available file: [e25577ee55] check-in: [2bcb2bd40f] user: js, branch: trunk, size: 31492 [annotate] [blame] [check-ins using] [diff] | |
2024-04-09
| ||
19:35 |
OFObject: Use posix_memalign() on Solaris
In 32 bit mode, malloc() doesn't always return pointers correctly | |
2024-04-03
| ||
02:16 | Change license to LGPLv3 only file: [d8ad2314c9] check-in: [7413a728a7] user: js, branch: trunk, size: 30513 [annotate] [blame] [check-ins using] [diff] | |
2024-03-28
| ||
18:29 |
Properly align objects on MS-DOS
When running an MS-DOS application on Windows 98 SE, it is possible to | |
2024-02-18
| ||
22:03 |
Use __mingw_aligned_* instead of _aligned_*
These are available on Windows 98 as well. file: [69eb852a00] check-in: [7965aac7d5] user: js, branch: trunk, size: 29181 [annotate] [blame] [check-ins using] [diff] | |
2024-02-13
| ||
22:40 |
Make sure objects are correctly aligned on Windows
malloc() on Windows XP only aligns with 8 bytes, which is not enough for | |
2024-01-02
| ||
17:17 | Update copyright file: [70b0e206af] check-in: [26ddd2e4e4] user: js, branch: trunk, size: 28712 [annotate] [blame] [check-ins using] [diff] | |
2023-11-04
| ||
14:43 |
OFAllocObject: Fix calculation of extra alignment
While at it, also migrate to using OFRoundUpToPowerOf2, which is much | |
2023-08-30
| ||
11:45 | Merge trunk into branch "amiga-library" file: [cbcdeeefcc] check-in: [5ea06b70ce] user: js, branch: amiga-library, size: 28771 [annotate] [blame] [check-ins using] [diff] | |
2023-08-08
| ||
15:32 | A few minor cleanups file: [663f9433ab] check-in: [a6f520157a] user: js, branch: trunk, size: 28684 [annotate] [blame] [check-ins using] [diff] | |
2023-07-15
| ||
20:57 | Merge trunk into branch "amiga-library" file: [f38056ff53] check-in: [860b0bf1e9] user: js, branch: amiga-library, size: 28748 [annotate] [blame] [check-ins using] [diff] | |
2023-06-19
| ||
19:22 | Minor style fixes file: [e705635cfb] check-in: [da7db4d68c] user: js, branch: trunk, size: 28661 [annotate] [blame] [check-ins using] [diff] | |
2023-04-10
| ||
19:22 |
Remove OFSerialization
While the idea sounds nice that the tag name is the class, this means the | |
15:08 | Work around newer amiga-gcc defining Class file: [d0e1cba71d] check-in: [abbed5c008] user: js, branch: trunk, size: 28685 [annotate] [blame] [check-ins using] [diff] | |
2023-01-06
| ||
09:04 | Update copyright file: [9eea9ca3cb] check-in: [8939cbdb52] user: js, branch: trunk, size: 28641 [annotate] [blame] [check-ins using] [diff] | |
2022-12-04
| ||
09:01 |
Remove +[OFObject new]
While it allows for some laziness when using ARC, it only creates | |
2022-11-16
| ||
01:31 | Merge trunk into branch "amiga-library" file: [fa1a2c06ef] check-in: [3c13b15751] user: js, branch: amiga-library, size: 28782 [annotate] [blame] [check-ins using] [diff] | |
01:27 |
Add OFAssert()
This uses the same format as OFEnsure(). file: [eefa1e2165] check-in: [c86b8f10f0] user: js, branch: trunk, size: 28695 [annotate] [blame] [check-ins using] [diff] | |
2022-11-13
| ||
11:32 | Use OFLog() instead of fprintf(stderr, ...) file: [afe0ab07e4] check-in: [ef470b8aa3] user: js, branch: trunk, size: 28714 [annotate] [blame] [check-ins using] [diff] | |
11:29 | Use OFLog() instead of fprintf(stderr, ...) file: [58ac8c00a9] check-in: [095a015165] user: js, branch: amiga-library, size: 28801 [annotate] [blame] [check-ins using] [diff] | |
2022-10-18
| ||
22:19 | Merge trunk into branch "amiga-library" file: [2ac228feac] check-in: [80dbc3c570] user: js, branch: amiga-library, size: 28909 [annotate] [blame] [check-ins using] [diff] | |
22:17 | Merge trunk into branch "amiga-library" file: [ac239733f0] check-in: [ac19ed9d40] user: js, branch: amiga-library, size: 27796 [annotate] [blame] [check-ins using] [diff] | |
2022-09-29
| ||
22:08 | Fix tests on Nintendo consoles & PSP file: [0477c3fb09] check-in: [01199db504] user: js, branch: trunk, size: 28822 [annotate] [blame] [check-ins using] [diff] | |
21:26 | OFException: Provide stack trace addresses file: [da1d529dc6] check-in: [f93fae010f] user: js, branch: trunk, size: 28820 [annotate] [blame] [check-ins using] [diff] | |
2022-09-19
| ||
19:16 | OFObject: Free spinlock in dealloc file: [1199f442fe] check-in: [8aa77abadd] user: js, branch: trunk, size: 28006 [annotate] [blame] [check-ins using] [diff] | |
2022-08-30
| ||
00:48 | OFObject: Small API change file: [ed9d8357b8] check-in: [4ad0c363f3] user: js, branch: trunk, size: 27713 [annotate] [blame] [check-ins using] [diff] | |
2022-04-25
| ||
13:09 |
Remove OFMemoryNotPartOfObjectException
It is no longer used. file: [fe35d606d6] check-in: [5ee9765356] user: js, branch: trunk, size: 27709 [annotate] [blame] [check-ins using] [diff] | |
2022-02-22
| ||
20:40 | OFObject: Fix a missing free file: [8b7ed1ef23] check-in: [b695a7ad48] user: js, branch: trunk, size: 27754 [annotate] [blame] [check-ins using] [diff] | |
2022-02-12
| ||
07:46 | Update copyright file: [c94b10de5b] check-in: [1a86b8175b] user: js, branch: trunk, size: 27732 [annotate] [blame] [check-ins using] [diff] | |
2022-01-29
| ||
19:24 | Make ObjFW compile for MiNT file: [a515832382] check-in: [8d027eadf3] user: js, branch: trunk, size: 27732 [annotate] [blame] [check-ins using] [diff] | |
2021-05-09
| ||
14:45 |
Merge trunk into branch "amiga-library"
All necessary changes to adjust for the changes made in trunk are | |
2021-05-02
| ||
09:25 | A few more missed renames file: [4833385eee] check-in: [19236ddfe7] user: js, branch: trunk, size: 27704 [annotate] [blame] [check-ins using] [diff] | |
2021-04-30
| ||
21:23 | Make OFHashSeed private file: [ec692d0b5b] check-in: [39863b3503] user: js, branch: trunk, size: 27704 [annotate] [blame] [check-ins using] [diff] | |
2021-04-25
| ||
11:05 | A few last renames file: [63795ddfa3] check-in: [27103855c2] user: js, branch: new-naming-convention, size: 27641 [annotate] [blame] [check-ins using] [diff] | |
2021-04-18
| ||
23:41 | of_memory_barrier -> OFMemoryBarrier file: [eafb73f421] check-in: [1cdf56dc9e] user: js, branch: new-naming-convention, size: 27641 [annotate] [blame] [check-ins using] [diff] | |
21:12 | OF_RETAIN_COUNT_MAX -> OFMaxRetainCount file: [2194068b85] check-in: [b06b86d6f9] user: js, branch: new-naming-convention, size: 27647 [annotate] [blame] [check-ins using] [diff] | |
20:51 | Rename everything in several smaller files file: [0448100f28] check-in: [35de667566] user: js, branch: new-naming-convention, size: 27650 [annotate] [blame] [check-ins using] [diff] | |
15:55 | Rename all functions in macros.h file: [f6a82db0c8] check-in: [7392685ffc] user: js, branch: new-naming-convention, size: 27591 [annotate] [blame] [check-ins using] [diff] | |
13:24 | Rename remaining functions in OFObject.h file: [5faecbc421] check-in: [d9f8960fc5] user: js, branch: new-naming-convention, size: 27591 [annotate] [blame] [check-ins using] [diff] | |
2021-04-17
| ||
22:45 | Rename of_(re)alloc and add OFFreeMemory file: [540c546a9d] check-in: [498074dab9] user: js, branch: new-naming-convention, size: 27634 [annotate] [blame] [check-ins using] [diff] | |
20:47 | Rename atomic operations file: [0c3d27624a] check-in: [dfaf287249] user: js, branch: new-naming-convention, size: 27567 [annotate] [blame] [check-ins using] [diff] | |
16:29 | of_spinlock_t -> OFSpinlock file: [b4c19ab1e4] check-in: [fabf53041a] user: js, branch: new-naming-convention, size: 27563 [annotate] [blame] [check-ins using] [diff] | |
16:13 | of_once_t -> OFOnceControl file: [2771fd68a5] check-in: [26aa88fc9b] user: js, branch: new-naming-convention, size: 27576 [annotate] [blame] [check-ins using] [diff] | |
02:10 | of_string_encoding_t -> OFStringEncoding file: [8df21bda9c] check-in: [255f21fb3d] user: js, branch: new-naming-convention, size: 27564 [annotate] [blame] [check-ins using] [diff] | |
00:51 | of_time_interval_t -> OFTimeInterval file: [9719883ec1] check-in: [8c0d76f782] user: js, branch: new-naming-convention, size: 27574 [annotate] [blame] [check-ins using] [diff] | |
2021-03-07
| ||
20:25 | *.m: Fold methods into one line where it fits file: [ab465686e4] check-in: [1b82d3bf4f] user: js, branch: trunk, size: 27614 [annotate] [blame] [check-ins using] [diff] | |
2021-01-02
| ||
22:06 | Update copyright file: [a0e6d07e6b] check-in: [27b401c7c2] user: js, branch: amiga-library, size: 27766 [annotate] [blame] [check-ins using] [diff] | |
22:04 | Update copyright file: [cef279c6b0] check-in: [374e1a1bfa] user: js, branch: trunk, size: 27632 [annotate] [blame] [check-ins using] [diff] | |
2020-12-20
| ||
21:36 | Merge trunk into branch "amiga-library" file: [779114b0ef] check-in: [90637a4ecc] user: js, branch: amiga-library, size: 27855 [annotate] [blame] [check-ins using] [diff] | |
21:26 |
Return error instead of using errno for threading
errno is problematic for Amiga libraries and is also not thread-safe on | |
2020-11-14
| ||
12:28 | Merge trunk into branch "amiga-library" file: [7354b5ddd4] check-in: [a55863c2ed] user: js, branch: amiga-library, size: 27831 [annotate] [blame] [check-ins using] [diff] | |
12:23 |
Rename of_malloc and of_calloc
The new names should be more accurate. file: [dfafb38c1f] check-in: [627511b032] user: js, branch: trunk, size: 27697 [annotate] [blame] [check-ins using] [diff] | |
11:45 | Merge trunk into branch "amiga-library" file: [4360aae9b1] check-in: [25a6c00b82] user: js, branch: amiga-library, size: 27826 [annotate] [blame] [check-ins using] [diff] | |
2020-11-07
| ||
20:23 | OFObject: Remove -[allocMemoryWithSize:] file: [e2e795413b] check-in: [4fbdca698c] user: js, branch: trunk, size: 27692 [annotate] [blame] [check-ins using] [diff] | |
2020-11-05
| ||
02:35 |
Remove -[allocZeroedMemoryWithSize:]
This is no longer being used. file: [b6169ba098] check-in: [2bb3136a7f] user: js, branch: trunk, size: 31838 [annotate] [blame] [check-ins using] [diff] | |
2020-11-04
| ||
23:18 |
Remove of_free()
While it makes sense to wrap malloc and calloc to replace the error | |
2020-10-25
| ||
23:33 | Add of_{malloc,calloc,realloc,free} file: [133c2d9091] check-in: [d0ae3bfd6c] user: js, branch: trunk, size: 32809 [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-10-04
| ||
15:00 | Merge trunk into branch "amiga-library" file: [567d4abd47] check-in: [92335940e9] user: js, branch: amiga-library, size: 31737 [annotate] [blame] [check-ins using] [diff] | |
2020-09-29
| ||
21:36 | Merge support for tagged pointers file: [73163cea94] check-in: [b4039f9a85] user: js, branch: trunk, size: 31603 [annotate] [blame] [check-ins using] [diff] | |
2020-09-27
| ||
01:00 | Don't assume arc4random_buf if we have arc4random file: [9fabb2395f] check-in: [9aa85c25b5] user: js, branch: trunk, size: 31458 [annotate] [blame] [check-ins using] [diff] | |
2020-07-12
| ||
18:00 | Merge trunk into branch "tagged-pointers" file: [bf40f65e77] check-in: [aba47e526e] user: js, branch: tagged-pointers, size: 31599 [annotate] [blame] [check-ins using] [diff] | |
11:50 | Obfuscate tagged pointers file: [a224615e89] check-in: [0bfac2b513] user: js, branch: tagged-pointers, size: 31510 [annotate] [blame] [check-ins using] [diff] | |
11:17 | Fix missing include for getrandom() file: [37d44845c9] check-in: [ed7377d854] user: js, branch: trunk, size: 31454 [annotate] [blame] [check-ins using] [diff] | |
10:35 | Split of_random() into of_random{16,32,64}() file: [f5834cd36c] check-in: [14f05841a3] user: js, branch: trunk, size: 31365 [annotate] [blame] [check-ins using] [diff] | |
10:00 | Add support for getrandom() file: [d3c7a17532] check-in: [ba1135b0b2] user: js, branch: trunk, size: 30806 [annotate] [blame] [check-ins using] [diff] | |
09:49 |
Make of_random() a function
When arc4random() is unavailable, either random() or rand() is used and | |
2020-06-21
| ||
03:02 | Add functions/variables for tests to Amiga library file: [99d327411f] check-in: [9937a79627] user: js, branch: amiga-library, size: 30201 [annotate] [blame] [check-ins using] [diff] | |
2020-01-02
| ||
22:16 | Move autorelease pools to runtime file: [d6b3535b02] check-in: [f2fe8f96d5] user: js, branch: trunk, size: 30067 [annotate] [blame] [check-ins using] [diff] | |
01:51 | Update copyright file: [b21ded3e9c] check-in: [c7f0229795] user: js, branch: trunk, size: 29972 [annotate] [blame] [check-ins using] [diff] | |
01:35 | Move objc_{con,de}structInstance to runtime file: [6644c9c215] check-in: [7f1acf9221] user: js, branch: trunk, size: 29969 [annotate] [blame] [check-ins using] [diff] | |
2019-12-13
| ||
00:00 | runtime: Add class_getInstanceMethod() file: [507689f6ed] check-in: [9e23a50de7] user: js, branch: trunk, size: 29990 [annotate] [blame] [check-ins using] [diff] | |
2019-12-08
| ||
21:51 | runtime: Make methods opaque and provide an API file: [349b3d550a] check-in: [f310bcc3ff] user: js, branch: trunk, size: 30098 [annotate] [blame] [check-ins using] [diff] | |
2019-08-18
| ||
22:22 | Optimize retain / release on AmigaOS file: [c440638f52] check-in: [fbe84dc674] user: js, branch: trunk, size: 31226 [annotate] [blame] [check-ins using] [diff] | |
2019-08-01
| ||
20:14 |
Split threading.[hm] into multiple files
This allows the runtime to only link against the parts it needs, without | |
2019-06-17
| ||
00:38 |
Remove underscores from library & framework names
This is more compatible with the various conventions used on various | |
2019-03-08
| ||
00:35 | Use dot syntax file: [2b218f823b] check-in: [bceb7ed4c9] user: js, branch: trunk, size: 30710 [annotate] [blame] [check-ins using] [diff] | |
2019-02-07
| ||
21:31 | More style improvements file: [edba45d06c] check-in: [754bf24742] user: js, branch: trunk, size: 30782 [annotate] [blame] [check-ins using] [diff] | |
00:46 |
Make style consistent between ObjFW and ObjFW_RT
ObjFW_RT used to be a separate project that followed the BSD style, as | |
2019-01-03
| ||
19:13 | Update copyright file: [13c5a8d446] check-in: [0509d7a844] user: js, branch: trunk, size: 30737 [annotate] [blame] [check-ins using] [diff] | |
2018-07-28
| ||
18:45 | Rename OFLocalization -> OFLocale file: [de9dc9587f] check-in: [aa0384d1bf] user: js, branch: trunk, size: 30731 [annotate] [blame] [check-ins using] [diff] | |
17:46 | macros.h: Fix missing ) and #include file: [da61972c93] check-in: [d0b636d965] user: js, branch: trunk, size: 30754 [annotate] [blame] [check-ins using] [diff] | |
16:48 |
macros.h: Add of_random()
This does *NOT* provide cryptographically secure randomness! file: [c2001431e3] check-in: [a2a06d372a] user: js, branch: trunk, size: 30777 [annotate] [blame] [check-ins using] [diff] | |
2018-06-09
| ||
16:30 | OFObject: Change one #else to #elif file: [f0155ad158] check-in: [745d514023] user: js, branch: trunk, size: 31182 [annotate] [blame] [check-ins using] [diff] | |
2018-06-03
| ||
23:31 | Add -[OFObject allocZeroedMemoryWithSize:(count:)] file: [aff4f94d44] check-in: [aacb5897a0] user: js, branch: trunk, size: 31156 [annotate] [blame] [check-ins using] [diff] | |
2018-04-22
| ||
17:48 | Make ObjFW compile for AmigaOS 3 file: [de528ece86] check-in: [0b07c8fcfa] user: js, branch: trunk, size: 30364 [annotate] [blame] [check-ins using] [diff] | |
16:13 |
runtime: Define BOOL to be the same as bool
As we define the ABI, we can just replace BOOL with bool everywhere, This still defines BOOL to bool for compatibility, except on AmigaOS and | |
2018-02-25
| ||
04:21 | OFObject: Bring +[new] back file: [4583da4a4e] check-in: [d6bf2b12dd] user: js, branch: trunk, size: 30347 [annotate] [blame] [check-ins using] [diff] | |
2018-01-21
| ||
22:16 |
Allow building the runtime as a .framework
This also renames ObjFW-RT to ObjFW_RT, as hyphens should not be in | |
2018-01-03
| ||
19:49 | Update copyright notice file: [27d4e83713] check-in: [7e5c81e186] user: js, branch: trunk, size: 30293 [annotate] [blame] [check-ins using] [diff] | |
2017-11-19
| ||
13:14 | Remove +[OFObject new] file: [22261c0609] check-in: [c03aab9c8c] user: js, branch: trunk, size: 30270 [annotate] [blame] [check-ins using] [diff] | |
2017-11-11
| ||
23:27 | Small optimization for -[isEqual:] file: [e04ae60642] check-in: [526feacebc] user: js, branch: trunk, size: 30324 [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-01
| ||
14:14 | Backport nullability fixes from master file: [4d9911935a] check-in: [f37b373a95] user: js, branch: 0.90, size: 25194 [annotate] [blame] [check-ins using] [diff] | |
14:05 |
Disable -Wnullable-to-nonnull-conversion again
It does not work well enough yet: While creating a lot of noise, it | |
09:54 | Nullability fixes for ObjFW runtime file: [b2d94e1a72] check-in: [5882409fd0] user: js, branch: trunk, size: 30271 [annotate] [blame] [check-ins using] [diff] | |
09:28 | Nullability fixes for macOS High Sierra file: [d1b883cd1d] check-in: [166fd50e82] user: js, branch: trunk, size: 30267 [annotate] [blame] [check-ins using] [diff] | |
2017-09-27
| ||
22:38 | More nullability fixes file: [6217c47a34] check-in: [6b66bda9eb] user: js, branch: 0.90, size: 25218 [annotate] [blame] [check-ins using] [diff] | |
22:35 | More nullability fixes file: [d351e409b9] check-in: [697e3ecbf7] user: js, branch: trunk, size: 30048 [annotate] [blame] [check-ins using] [diff] | |
2017-09-25
| ||
00:02 | OFObject: Add -[performSelector*] with 4 objects file: [34872d52d4] check-in: [f714793eb4] user: js, branch: trunk, size: 30032 [annotate] [blame] [check-ins using] [diff] | |
2017-09-24
| ||
02:11 | OFObject: Add -[performSelector*] with 3 objects file: [ca49ba5cd2] check-in: [9f1accca4e] user: js, branch: trunk, size: 27268 [annotate] [blame] [check-ins using] [diff] | |
2017-09-09
| ||
22:03 | Replace type encodings with OFMethodSignature file: [958e60e586] check-in: [55f1b21ae7] user: js, branch: trunk, size: 24770 [annotate] [blame] [check-ins using] [diff] | |
2017-07-09
| ||
15:29 | runtime: Rename include to ObjFW-RT.h file: [c072b00a16] check-in: [5bb771755d] user: js, branch: trunk, size: 25202 [annotate] [blame] [check-ins using] [diff] | |
2017-05-28
| ||
11:24 |
Make +[resolve{Class,Instance}Method:] return BOOL
Other runtimes expect it to be BOOL, not bool. file: [a3ec40e380] check-in: [012c6b5786] user: js, branch: trunk, size: 25201 [annotate] [blame] [check-ins using] [diff] | |
2017-05-13
| ||
20:11 | OFObject: Make Foundation check work on macOS 10.5 file: [a28a9b391e] check-in: [9f9898eb8b] user: js, branch: trunk, size: 25207 [annotate] [blame] [check-ins using] [diff] | |
19:51 | Make Apple GCC happy file: [43cde2e0c7] check-in: [7e8ee9b1f9] user: js, branch: trunk, size: 25206 [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: [3eb86842c6] check-in: [4af49a13c3] user: js, branch: trunk, size: 25251 [annotate] [blame] [check-ins using] [diff] | |
15:39 |
Do not include any addresses in -[description]
This makes it harder to accidentally leak addresses which could be used | |
2017-04-13
| ||
13:30 | -[OFObject release]: Add memory barriers file: [8d7351b7a0] check-in: [05e2b4b851] user: js, branch: trunk, size: 25193 [annotate] [blame] [check-ins using] [diff] | |
2017-04-02
| ||
02:02 | Add OF_WEAK_REF() file: [349066991f] check-in: [126632e200] user: js, branch: trunk, size: 25125 [annotate] [blame] [check-ins using] [diff] | |
2017-02-03
| ||
22:42 |
Improve -[OFObject hash]
This shifted the wrong way, and there's also no point in not hashing | |
2017-01-09
| ||
17:36 |
Update copyright
Forgot to add 2017, even though I already did quite some changes in | |
06:26 |
Add OFLocalization
This singleton gives access to all things locale, including the ability This also adds the OF_LOCALIZED() macro. Its first argument is an ID for Getting translated strings is not implemented yet: Instead, it always This also switches ofhttp to localized strings. file: [f695ac4fbd] check-in: [06bcb21fc7] user: js, branch: trunk, size: 25077 [annotate] [blame] [check-ins using] [diff] | |
2016-10-15
| ||
20:47 |
Use NSFoundationVersionNumber to detect Foundation
This is more reliable than checking for CFRetain to see if | |
2016-10-08
| ||
15:57 |
Never override CoreFoundations's forward handler
If an application links ObjFW and (Core)Foundation, overriding Before this commit, this only worked depending on the load order: If | |
15:57 | Explicitly cast objc_msgSend file: [a2a40a09cb] check-in: [bc64c479a8] user: js, branch: trunk, size: 24592 [annotate] [blame] [check-ins using] [diff] | |
2016-07-04
| ||
19:36 |
Remove check for objc_enumerationMutation
Every supported runtime has it, so there is no point in having it. | |
2016-07-03
| ||
12:01 |
runtime: Add objc_enumerationMutation()
This was provided by OFObject before, but should actually be provided by | |
2016-06-05
| ||
00:01 |
Add OFKeyValueCoding
No support for paths and auto-wrapping yet. Also, no classes like OFDictionary override it yet. file: [8d3755fc71] check-in: [3ad1f2b268] user: js, branch: trunk, size: 24724 [annotate] [blame] [check-ins using] [diff] | |
2016-05-29
| ||
00:42 |
Add -[{allows,retain}WeakReference] to OFObject
This is required by the Apple runtime to support weak references. file: [980b1c8958] check-in: [1d57af4a31] user: js, branch: trunk, size: 24683 [annotate] [blame] [check-ins using] [diff] | |
2016-05-28
| ||
11:37 |
Add a reference to OFStdIOStream_Win32Console
This is required for static linking, as otherwise | |
2016-05-06
| ||
20:39 | Enable -Wsign-compare file: [bfe47061e0] check-in: [2a2e17d8d0] user: js, branch: trunk, size: 24572 [annotate] [blame] [check-ins using] [diff] | |
2016-03-28
| ||
23:43 |
Style consistency changes
Multiline preprocessor directives now always indent the continued lines | |
2016-02-21
| ||
15:37 | Make use of C99-style for loops file: [6e92aa6c33] check-in: [e0b9167693] user: js, branch: trunk, size: 24548 [annotate] [blame] [check-ins using] [diff] | |
2016-01-03
| ||
00:43 |
Update copyright
While at it, also update the mail address. file: [c0b3318fe8] check-in: [cec0f072f8] user: js, branch: 0.8, size: 24529 [annotate] [blame] [check-ins using] [diff] | |
00:41 |
Update copyright
While at it, also update the mail address. file: [4b9ff362fe] check-in: [2a27cf3000] user: js, branch: trunk, size: 24533 [annotate] [blame] [check-ins using] [diff] | |
2015-10-19
| ||
22:15 | Add platform.h & make platform defines consistent file: [fa72960651] check-in: [1ba08eebc5] user: js, branch: trunk, size: 24529 [annotate] [blame] [check-ins using] [diff] | |
2015-08-26
| ||
08:50 |
Make sure of_hash_seed is never initialized to 0
of_hash_seed == 0 is special, as it means to OFMapTable to behave | |
2015-03-30
| ||
21:33 |
Add OF_NO_RETURN_FUNC
OF_NO_RETURN_FUNC is defined when __attribute__((__noreturn__)) is | |
2015-02-01
| ||
00:47 | Reduce code size for OF_UNRECOGNIZED_SELECTOR file: [11cea8a285] check-in: [e0c84651d6] user: js, branch: trunk, size: 24449 [annotate] [blame] [check-ins using] [diff] | |
2015-01-03
| ||
20:57 | Update copyright file: [b4471e2926] check-in: [cfd374b906] user: js, branch: trunk, size: 24423 [annotate] [blame] [check-ins using] [diff] | |
2014-10-04
| ||
21:59 |
Add +[OFSystemInfo native8BitEncoding]
This replaces +[OFString nativeOSEncoding]. file: [da02b5a0e1] check-in: [ec66e49dca] user: js, branch: trunk, size: 24417 [annotate] [blame] [check-ins using] [diff] | |
2014-08-23
| ||
01:01 |
Make ObjFW.framework a module
This makes it possible to import ObjFW from Swift. file: [d6054ff862] check-in: [c8a562d8d7] user: js, branch: trunk, size: 24356 [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
| ||
15:32 |
Multiple dtable / sparse array improvements
* dtable.m is now the old sparse array, using IMP as type for values and | |
15:17 | Work around Apple's API breaking the C standard file: [a836174d3d] check-in: [469553637d] user: js, branch: trunk, size: 24106 [annotate] [blame] [check-ins using] [diff] | |
01:50 |
Don't define _*_SOURCE
Instead, just define _GNU_SOURCE when __GLIBC__ is defined. After all, | |
2014-05-05
| ||
01:08 | Improve atomics API file: [e8aca19951] check-in: [a92844520a] user: js, branch: trunk, size: 24111 [annotate] [blame] [check-ins using] [diff] | |
2014-03-30
| ||
00:30 | ObjFW-RT: Call +[unload] on class unregister file: [f3bed53382] check-in: [1ecef2d7f6] user: js, branch: trunk, size: 24113 [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-16
| ||
23:38 |
Add +[OFString nativeOSEncoding].
This replaces OF_STRING_ENCODING_NATIVE, as a define was not flexible | |
23:09 |
Add of_time_interval_t.
This is used instead for time intervals now instead of doubles. file: [12e6e740e4] check-in: [dc31ce3d34] user: js, branch: trunk, size: 24068 [annotate] [blame] [check-ins using] [diff] | |
2014-01-12
| ||
23:38 | Add -[superclass] to OFObject protocol. file: [3b4e65cff2] check-in: [4c6d9b7c1b] user: js, branch: trunk, size: 23996 [annotate] [blame] [check-ins using] [diff] | |
2014-01-04
| ||
00:24 | Update copyright. file: [c604df4ce7] check-in: [3b97fc3cd9] user: js, branch: trunk, size: 23919 [annotate] [blame] [check-ins using] [diff] | |
2013-12-27
| ||
02:07 |
Rework forwarding API and ABI.
It matches the Apple API and ABI now and the forwarding handler itself This moves handling of +[resolve{Class,Instance}Method:] to the runtime Also fixes a potential stack problem in the forwarding for MIPS. file: [a55f4922cc] check-in: [0c332aa2d2] user: js, branch: trunk, size: 23913 [annotate] [blame] [check-ins using] [diff] | |
2013-12-21
| ||
12:58 |
-[performSelector:]: Use the normal dispatch.
This has the advantage of being faster. file: [e741aba66a] check-in: [3dac86b429] user: js, branch: trunk, size: 25634 [annotate] [blame] [check-ins using] [diff] | |
2013-12-20
| ||
00:14 | runtime: More consistency in the API. file: [9bd5d20560] check-in: [2dec88a9d5] user: js, branch: trunk, size: 25572 [annotate] [blame] [check-ins using] [diff] | |
2013-12-15
| ||
18:11 | Silence a few of Clang Analyzer's false positives. file: [704b6761d2] check-in: [d0b98b417d] user: js, branch: trunk, size: 25562 [annotate] [blame] [check-ins using] [diff] | |
2013-12-07
| ||
17:30 |
macros.h: Add OF_BIGGEST_ALIGNMENT.
When the compiler supports C11, _Alignof(max_align_t) is used; otherwise | |
2013-12-05
| ||
17:48 |
Make coding style consistent.
A file documenting the coding style will be written soon. This will | |
2013-11-23
| ||
01:27 | Add OF_UNRECOGNIZED_SELECTOR. file: [7af9301010] check-in: [6e19bd47ee] user: js, branch: trunk, size: 25551 [annotate] [blame] [check-ins using] [diff] | |
2013-11-22
| ||
23:24 | runtime: Add support for non-fragile ivars. file: [8e2d9bc735] check-in: [3780f1462e] user: js, branch: trunk, size: 25719 [annotate] [blame] [check-ins using] [diff] | |
2013-08-12
| ||
21:59 |
OFZIPArchive: Initial implementation.
Still a lot to do, see list of FIXMEs in the source. file: [5387ac3c3a] check-in: [1c78b3a4db] user: js, branch: trunk, size: 25719 [annotate] [blame] [check-ins using] [diff] | |
2013-07-27
| ||
17:38 | Fix a typo. file: [1d6bb87b12] check-in: [405731e798] user: js, branch: trunk, size: 25736 [annotate] [blame] [check-ins using] [diff] | |
2013-07-26
| ||
15:21 |
Add support for objc_msg_lookup_stret.
The assembly implementations of the lookup and forwarding still need to | |
2013-07-23
| ||
22:48 | Allow classes in collections requiring OFCopying. file: [fd13e3d461] check-in: [7992490163] user: js, branch: trunk, size: 25714 [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-06-18
| ||
21:37 | Make more use of OF_STRING_ENCODING_NATIVE. file: [22ddb06ede] check-in: [7c7187345a] user: js, branch: trunk, size: 25949 [annotate] [blame] [check-ins using] [diff] | |
2013-05-22
| ||
21:09 | Show a backtrace for uncaught exceptions. file: [8d2c38124f] check-in: [32230a1615] user: js, branch: trunk, size: 25813 [annotate] [blame] [check-ins using] [diff] | |
18:45 |
Import OFThread.h unconditionally.
It's safe to always import OFThread.h now as OFThread even offers | |
2013-04-07
| ||
21:21 | Fix Win32 #include hell. file: [51f9346050] check-in: [ec6b265428] user: js, branch: trunk, size: 25593 [annotate] [blame] [check-ins using] [diff] | |
2013-03-16
| ||
10:13 |
Add forwardingTargetForSelector: for AMD64/ELF.
Currently, no methods returning structs are supported, see the comment | |
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
| ||
10:38 | Add -[OFDataArray initWithItemSize:capacity:]. file: [68901c9b91] check-in: [e403ca05cb] user: js, branch: trunk, size: 24834 [annotate] [blame] [check-ins using] [diff] | |
2013-01-22
| ||
02:31 |
OFStream: Add property for writeBufferEnabled.
This also renames the getter to -[isWriteBufferEnabled]. file: [9691c753e2] check-in: [b96b150ce3] user: js, branch: trunk, size: 24848 [annotate] [blame] [check-ins using] [diff] | |
2013-01-14
| ||
23:22 | OFObject: Cosmetic changes. file: [4617a114d5] check-in: [6d438629e2] user: js, branch: trunk, size: 24961 [annotate] [blame] [check-ins using] [diff] | |
2013-01-12
| ||
20:53 | Clean up the feature #ifdef mess. file: [c05874ae6f] check-in: [b8ce2359f3] user: js, branch: trunk, size: 24921 [annotate] [blame] [check-ins using] [diff] | |
20:32 | Fix code used when atomic ops are unavailable. file: [1c57171d5d] check-in: [20aea410be] user: js, branch: trunk, size: 25010 [annotate] [blame] [check-ins using] [diff] | |
20:21 | Fix --disable-threads. file: [431202d1e9] check-in: [85b8efadbc] user: js, branch: trunk, size: 25011 [annotate] [blame] [check-ins using] [diff] | |
17:29 |
Rename *UsingEncoding: to *WithEncoding:.
This reverts 5362941. Even though *UsingEncoding: is what Foundation uses, *WithEncoding: is | |
2013-01-09
| ||
22:24 | Update copyright. file: [4e3a5a961f] check-in: [813c00ccf0] user: js, branch: trunk, size: 24961 [annotate] [blame] [check-ins using] [diff] | |
2012-12-30
| ||
00:19 |
-[performSelector:]: Never call NULL.
When the selector is not recognized, call -[doesNotRecognizeSelector:]. file: [2afc930247] check-in: [0389649320] user: js, branch: trunk, size: 24955 [annotate] [blame] [check-ins using] [diff] | |
2012-12-26
| ||
14:10 | Add OFSystemInfo. file: [6afd10fb87] check-in: [4b637f8516] user: js, branch: trunk, size: 24727 [annotate] [blame] [check-ins using] [diff] | |
2012-12-22
| ||
15:37 | Add -[doesNotRecognizeSelector:]. file: [23e21a638e] check-in: [917ce5754c] user: js, branch: trunk, size: 25343 [annotate] [blame] [check-ins using] [diff] | |
14:41 | Never throw in -[typeEncodingForSelector:]. file: [9c302a662d] check-in: [77573bf01f] user: js, branch: trunk, size: 25586 [annotate] [blame] [check-ins using] [diff] | |
2012-12-15
| ||
23:31 | OFString: Improved API for getting C strings. file: [5c04a02683] check-in: [e2f4c1283c] user: js, branch: trunk, size: 26136 [annotate] [blame] [check-ins using] [diff] | |
2012-12-12
| ||
18:40 | Coding style. file: [517d28e9f2] check-in: [6ad5d3d8d6] user: js, branch: trunk, size: 26135 [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
| ||
21:17 | Fix Clang warnings and a typo. file: [0307a15aa9] check-in: [31d023e401] user: js, branch: trunk, size: 26283 [annotate] [blame] [check-ins using] [diff] | |
11:00 | Add of_random(). file: [af5fd55d36] check-in: [f675979cf0] user: js, branch: trunk, size: 26251 [annotate] [blame] [check-ins using] [diff] | |
00:14 | Improve -[hash] of OFNumber and OFObject. file: [e989a30df6] check-in: [ac51f5f0cf] user: js, branch: trunk, size: 25972 [annotate] [blame] [check-ins using] [diff] | |
2012-12-04
| ||
09:19 |
Randomize hashes.
This prevents DoSing hashtables by creating conflicts deliberately. file: [df05949c71] check-in: [f60e4012b7] user: js, branch: trunk, size: 25822 [annotate] [blame] [check-ins using] [diff] | |
2012-11-28
| ||
19:27 |
Remove broken forwarding target for ObjFW-RT.
While it calls the correct method, it does not pass the correct object | |
2012-11-26
| ||
23:19 | Implement forwarding target for Apple/ARM. file: [dfed8e0734] check-in: [5927b80b4e] user: js, branch: trunk, size: 25770 [annotate] [blame] [check-ins using] [diff] | |
2012-11-17
| ||
18:23 | Implement forwarding target for Apple/PPC. file: [80381fd262] check-in: [95850c4572] user: js, branch: trunk, size: 25866 [annotate] [blame] [check-ins using] [diff] | |
2012-11-16
| ||
23:07 | Implement forwarding target for Apple/i386. file: [62c904a387] check-in: [1ec18e57bc] user: js, branch: trunk, size: 25826 [annotate] [blame] [check-ins using] [diff] | |
21:16 |
Implement forwarding target for the Apple runtime.
Only on x86_64 so far, others to follow. file: [43abec3b5d] check-in: [2b20e164d7] user: js, branch: trunk, size: 25774 [annotate] [blame] [check-ins using] [diff] | |
2012-11-14
| ||
15:39 |
Initial -[forwarindTargetForSelector:].
This only works with the ObjFW runtime so far. The Apple runtime will | |
2012-10-21
| ||
22:12 | Make GCC 4.4 happy. file: [130a752ea7] check-in: [fcade8da38] user: js, branch: trunk, size: 25155 [annotate] [blame] [check-ins using] [diff] | |
2012-10-10
| ||
10:16 |
Provide objc_constructInstance() when necessary.
OS X < 10.6 did not have it, so it is built regardless of the selected | |
2012-09-17
| ||
10:18 | Add -[performSelectorOnMainThread:waitUntilDone:]. file: [36829d1a67] check-in: [e959c99f85] user: js, branch: trunk, size: 25157 [annotate] [blame] [check-ins using] [diff] | |
09:30 | Simplify autoreleasing. file: [13e68b8637] check-in: [c9bea2982f] user: js, branch: trunk, size: 23845 [annotate] [blame] [check-ins using] [diff] | |
2012-09-16
| ||
22:31 | Add -[performSelector:onThread:waitUntilDone:]. file: [5b25661283] check-in: [e9cbd5e12a] user: js, branch: trunk, size: 23838 [annotate] [blame] [check-ins using] [diff] | |
22:16 | Make sure an autorelease pool is always in place. file: [5eddd9378d] check-in: [cc9601c228] user: js, branch: trunk, size: 22484 [annotate] [blame] [check-ins using] [diff] | |
21:59 | Make it possible to invalidate OFTimers. file: [2de861858b] check-in: [8658d1a22a] user: js, branch: trunk, size: 22467 [annotate] [blame] [check-ins using] [diff] | |
13:23 | Add -[performSelector:onThread:afterDelay:]. file: [91d44503b0] check-in: [4fd5559652] user: js, branch: trunk, size: 22469 [annotate] [blame] [check-ins using] [diff] | |
2012-09-14
| ||
06:09 | Add -[OFObject performSelector:afterDelay:]. file: [6a36e235dc] check-in: [5e067285c8] user: js, branch: trunk, size: 21260 [annotate] [blame] [check-ins using] [diff] | |
2012-09-11
| ||
14:20 | Add missing abort to uncaught_exception_handler. file: [9817511d97] check-in: [e58bcdedb5] user: js, branch: trunk, size: 20281 [annotate] [blame] [check-ins using] [diff] | |
2012-09-06
| ||
19:13 | Add objc_{construct,destruct}Instance(). file: [2f8b3fda71] check-in: [20c584252c] user: js, branch: trunk, size: 20271 [annotate] [blame] [check-ins using] [diff] | |
2012-08-10
| ||
20:08 |
Directly use the runtime's autorelease pools.
This greatly improves performance, as it gets rid of the overhead of | |
2012-08-04
| ||
08:29 | Replace a few init methods with constructors. file: [ef2b5b53fe] check-in: [c34d45798b] user: js, branch: trunk, size: 21507 [annotate] [blame] [check-ins using] [diff] | |
2012-08-03
| ||
22:37 |
Implement basic forwarding.
No need to implement it for the Apple runtime, as the Apple runtime | |
2012-07-16
| ||
23:49 |
Add OF_ENSURE.
This is to be used when the condition includes a statement that needs to | |
22:44 | Don't require extra parentheses for OF_(UN)LIKELY. file: [edc6b04857] check-in: [ff8b2a6c29] user: js, branch: trunk, size: 20364 [annotate] [blame] [check-ins using] [diff] | |
2012-07-15
| ||
00:54 | Fix a memory leak. file: [d6164e1afa] check-in: [f772f8c188] user: js, branch: trunk, size: 20037 [annotate] [blame] [check-ins using] [diff] | |
2012-07-14
| ||
20:00 |
New autorelease pools.
This uses the runtime's autorelease pools and implements autorelease These new pools should be ARC-compatible now and finally, it should be As a bonus, it's significantly faster to use the ObjFW runtime with | |
2012-07-12
| ||
01:28 | Don't access isa directly. file: [470fa11181] check-in: [8892ae9fcc] user: js, branch: trunk, size: 19981 [annotate] [blame] [check-ins using] [diff] | |
2012-07-11
| ||
13:56 | Get the number of CPUs on QNX. file: [64a1864a0a] check-in: [3d1d05df3c] user: js, branch: trunk, size: 19696 [annotate] [blame] [check-ins using] [diff] | |
08:38 | Only use _SC_* if defined. file: [fd16b773e1] check-in: [a3dcdac0b8] user: js, branch: trunk, size: 19516 [annotate] [blame] [check-ins using] [diff] | |
2012-07-03
| ||
15:44 | runtime: Add exception handling. file: [a5886ec856] check-in: [a230197b48] user: js, branch: runtime, size: 19509 [annotate] [blame] [check-ins using] [diff] | |
2012-06-11
| ||
20:50 |
Merge branch 'master' into runtime
* master: (6 commits) | |
2012-06-10
| ||
13:28 | More API improvements. file: [7124c4f433] check-in: [11d3d69a22] user: js, branch: trunk, size: 24924 [annotate] [blame] [check-ins using] [diff] | |
2012-06-06
| ||
14:05 |
Merge branch 'master' into runtime
* master: (17 commits) | |
13:47 |
Slightly change the memory management API.
Also fix a bug where OFBigDataArray would waste memory. file: [51c24d6468] check-in: [f7576a66ce] user: js, branch: trunk, size: 25006 [annotate] [blame] [check-ins using] [diff] | |
2012-04-03
| ||
18:30 | Make clang happy. file: [26d577e585] check-in: [931a8783ca] user: js, branch: runtime, size: 19547 [annotate] [blame] [check-ins using] [diff] | |
2012-03-23
| ||
14:54 | Add class_getMethodImplementation(). file: [946762df81] check-in: [46105d56c7] user: js, branch: runtime, size: 19537 [annotate] [blame] [check-ins using] [diff] | |
12:59 | Move objc_{properties,sync} to runtime. file: [99d74c377b] check-in: [adbce6d8f4] user: js, branch: runtime, size: 19714 [annotate] [blame] [check-ins using] [diff] | |
12:04 | Merge branch 'master' into runtime file: [97e6d3c1aa] check-in: [3719e10281] user: js, branch: runtime, size: 19801 [annotate] [blame] [check-ins using] [diff] | |
10:45 | Add a cast to make Clang happy. file: [6045fcc9af] check-in: [2179411c60] user: js, branch: runtime, size: 20232 [annotate] [blame] [check-ins using] [diff] | |
2012-03-21
| ||
14:47 | OFObject: Use owner as a sentinel for pre_mem. file: [708e72ca3d] check-in: [ce1c7fe940] user: js, branch: trunk, size: 24982 [annotate] [blame] [check-ins using] [diff] | |
2012-03-17
| ||
15:12 | Add of_alloc_object(). file: [0df01667b3] check-in: [e7d16fea58] user: js, branch: trunk, size: 24819 [annotate] [blame] [check-ins using] [diff] | |
14:26 | Move definition of __BIGGEST_ALIGNMENT__ to macros.h. file: [ffa19d5312] check-in: [2d4a63cfcb] user: js, branch: trunk, size: 24165 [annotate] [blame] [check-ins using] [diff] | |
2012-03-15
| ||
11:29 |
Greatly improve OFObject's memory handling and performance.
A linked-list is put before each memory chunk allocated instead of As allocating bigger chunks seems to be a little bit slower than smaller | |
2012-03-13
| ||
20:19 | Add of_num_cpus. file: [eb1f0d3652] check-in: [5a7c58ec98] user: js, branch: trunk, size: 25566 [annotate] [blame] [check-ins using] [diff] | |
2012-03-06
| ||
16:53 | Implement +[OFObject inheritMethodsFromClass:] for the ObjFW runtime. file: [cb4e4e0941] check-in: [54c4df2021] user: js, branch: runtime, size: 20236 [annotate] [blame] [check-ins using] [diff] | |
16:31 | Merge changes from default branch into runtime branch. file: [5440e87ac8] check-in: [9bb186a7a3] user: js, branch: runtime, size: 19245 [annotate] [blame] [check-ins using] [diff] | |
16:17 | Clean up the method replacement mess. file: [836c79ac97] check-in: [2d08ba105c] user: js, branch: trunk, size: 25413 [annotate] [blame] [check-ins using] [diff] | |
00:13 | Init C++ ctors in -[init] instead of +[alloc]. file: [fc6752589f] check-in: [9767602af7] user: js, branch: trunk, size: 29411 [annotate] [blame] [check-ins using] [diff] | |
2012-03-04
| ||
19:42 | Remove all code for the GNU runtime. file: [ad59fef6e2] check-in: [7f0b0c9811] user: js, branch: runtime, size: 21435 [annotate] [blame] [check-ins using] [diff] | |
19:28 | Change includes of objfw-rt.h to include local runtime.h. file: [1328998492] check-in: [1664513cf6] user: js, branch: runtime, size: 29447 [annotate] [blame] [check-ins using] [diff] | |
2012-02-27
| ||
22:11 | Add -[OFObject isMemberOfClass:] and -[OFObject isProxy]. file: [76ac8473f2] check-in: [8830166fe8] user: js, branch: trunk, size: 29448 [annotate] [blame] [check-ins using] [diff] | |
2012-01-05
| ||
00:56 | Update copyright. file: [0093660075] check-in: [ce70e17b38] user: js, branch: trunk, size: 29348 [annotate] [blame] [check-ins using] [diff] | |
2012-01-03
| ||
20:44 | Don't use objc_setUncaughtExceptionHandler with the old Apple runtime. file: [e021a66494] check-in: [138d928621] user: js, branch: trunk, size: 29342 [annotate] [blame] [check-ins using] [diff] | |
2012-01-01
| ||
19:41 | Some MinGW versions are missing alloca() in <stdlib.h>. file: [066d7adb4c] check-in: [d871468a3a] user: js, branch: trunk, size: 29295 [annotate] [blame] [check-ins using] [diff] | |
2011-12-23
| ||
03:07 | Add an uncaught exception handler for the Apple & new GNU runtime. file: [f8865835bf] check-in: [40c0aba35e] user: js, branch: trunk, size: 29295 [annotate] [blame] [check-ins using] [diff] | |
2011-12-13
| ||
13:43 | Work around a bug affecting only Clang 2.9 + libobjc from GCC 4.6. file: [f6fefc29fd] check-in: [0c427ebb0a] user: js, branch: trunk, size: 28862 [annotate] [blame] [check-ins using] [diff] | |
2011-10-24
| ||
15:00 | Don't use a spinlock for reference counting if we have no threads. file: [34b558d1e8] check-in: [9454c38313] user: js, branch: trunk, size: 28012 [annotate] [blame] [check-ins using] [diff] | |
2011-09-22
| ||
23:25 |
Exceptions are now autoreleased.
This is safe as an "exception loop" can't happen, since if allocating So, the worst case would be that an autorelease of an exception fails, | |
2011-09-19
| ||
16:34 |
Rename -[allocMemoryForNItems:withSize:] and friends. It is now -[allocMemoryForNItems:ofSize:]. file: [e5c0e6c88e] check-in: [f173477bef] user: js, branch: trunk, size: 27612 [annotate] [blame] [check-ins using] [diff] | |
2011-09-12
| ||
19:57 | Rename -[cString] to -[UTF8String]. file: [6cafb355bb] check-in: [e6fd39d11e] user: js, branch: trunk, size: 27613 [annotate] [blame] [check-ins using] [diff] | |
2011-09-10
| ||
18:36 | Remove -[finalize] as ARC will be implemented instead of a GC. file: [02fc494c69] check-in: [972a3ee40d] user: js, branch: trunk, size: 27487 [annotate] [blame] [check-ins using] [diff] | |
2011-08-03
| ||
04:14 |
Use the well hidden __objc_update_dispatch_table_for_class() function.
The old GNU API actually does export a function to update the dtable, | |
03:53 |
Always use the old GNU API, even with the new GNU runtime.
The new API of the new GNU runtime is currently too broken to be of any | |
03:38 |
Fix updating the dtable for the old GNU runtime.
Again, why does the old GNU runtime force us to fiddle with its internal | |
01:55 | D'oh... file: [1dc5e5a7d1] check-in: [e8dccdf9a9] user: js, branch: trunk, size: 28551 [annotate] [blame] [check-ins using] [diff] | |
2011-08-01
| ||
19:01 |
Don't use any other classes for +[inheritMethodsFromClass:].
Using other classes there would make it impossible to use | |
2011-07-31
| ||
20:03 | Correctly update the dtable for the old GNU runtime. file: [7f71e00414] check-in: [df914ca51d] user: js, branch: trunk, size: 26946 [annotate] [blame] [check-ins using] [diff] | |
19:45 |
Cleaner -[setImplementation:...] for old GNU runtime.
Still work needed to correctly update the dtable. file: [c563fc5512] check-in: [fbee44d38e] user: js, branch: trunk, size: 26486 [annotate] [blame] [check-ins using] [diff] | |
02:07 | Implement adding methods for the GNU runtime. file: [e350530160] check-in: [db5f8c2c1b] user: js, branch: trunk, size: 26202 [annotate] [blame] [check-ins using] [diff] | |
2011-07-30
| ||
23:31 |
More enhancements in +[OFObject inheritMethodsFromClass:].
Inherits class and instance methods now, handles superclasses, etc. file: [3cd936beff] check-in: [2828853e17] user: js, branch: trunk, size: 24354 [annotate] [blame] [check-ins using] [diff] | |
23:14 | +[addClassMethod:withTypeEncoding:implementation:] to OFObject. file: [6537d810e0] check-in: [6083048589] user: js, branch: trunk, size: 23379 [annotate] [blame] [check-ins using] [diff] | |
17:43 | Fix a typo. file: [103c38cd6a] check-in: [5613f7fc46] user: js, branch: trunk, size: 23031 [annotate] [blame] [check-ins using] [diff] | |
02:14 | Improve +[inheritInstanceMethodsFromClass:]. file: [e21e0eaee6] check-in: [cace873874] user: js, branch: trunk, size: 23030 [annotate] [blame] [check-ins using] [diff] | |
2011-07-29
| ||
21:54 |
Add +[inheritInstanceMethodsFromClass:] to OFObject.
This allows something similar to multiple inheritance. file: [c64aa46779] check-in: [bf0f10966f] user: js, branch: trunk, size: 22541 [annotate] [blame] [check-ins using] [diff] | |
2011-07-24
| ||
20:05 | Add a few defines for runtime methods so they always have the same name. file: [51e0fb0c89] check-in: [c7bc7b93d9] user: js, branch: trunk, size: 21434 [annotate] [blame] [check-ins using] [diff] | |
2011-07-23
| ||
13:33 | Add -[self] to OFObject. file: [28150d2fd9] check-in: [f1d6ecb1b8] user: js, branch: trunk, size: 21752 [annotate] [blame] [check-ins using] [diff] | |
2011-07-17
| ||
01:55 |
Define __NO_EXT_QNX in files using unistd.h or fcntl.h.
Without this, the headers try to declare functions that use __block as | |
01:55 |
Define __NO_EXT_QNX in files using unistd.h or fcntl.h.
Without this, the headers try to declare functions that use __block as | |
2011-07-08
| ||
15:29 | Make it possible to add more ivars to OFConstantString. file: [1a556c5a33] check-in: [0b846bcc4a] user: js, branch: trunk, size: 21702 [annotate] [blame] [check-ins using] [diff] | |
2011-07-06
| ||
17:44 | Add +[new] to OFObject for compatibility and convenience. file: [de19156e6d] check-in: [0319e89d4b] user: js, branch: trunk, size: 21716 [annotate] [blame] [check-ins using] [diff] | |
2011-06-13
| ||
14:08 | Reduce ObjC method calls in OFFloatVector and OFFloatMatrix. file: [1d0de2f3be] check-in: [f4313d070a] user: js, branch: trunk, size: 21676 [annotate] [blame] [check-ins using] [diff] | |
03:47 | Fix -[conformsToProtocol:] for the old GNU runtime. file: [bd7981a871] check-in: [6fa34f7811] user: js, branch: 0.5, size: 20459 [annotate] [blame] [check-ins using] [diff] | |
03:47 | Fix -[conformsToProtocol:] for the old GNU runtime. file: [251a843844] check-in: [a1769f0105] user: js, branch: trunk, size: 21676 [annotate] [blame] [check-ins using] [diff] | |
00:06 | Replace a forgotten SIZE_MAX with UINT_MAX in OFObject.m. file: [c23b582461] check-in: [287d598b5a] user: js, branch: trunk, size: 21657 [annotate] [blame] [check-ins using] [diff] | |
2011-06-10
| ||
18:19 | Save 16 bytes per object on 64 bit systems with a 16 byte alignment. file: [ace848aef2] check-in: [def4850926] user: js, branch: trunk, size: 21657 [annotate] [blame] [check-ins using] [diff] | |
2011-06-06
| ||
16:19 | Remove semicolons that should not have been there. file: [01ae05fc13] check-in: [048ed62083] user: js, branch: 0.5, size: 20440 [annotate] [blame] [check-ins using] [diff] | |
16:18 | Remove semicolons that should not have been there. file: [05402e39fd] check-in: [65ec63f7c1] user: js, branch: trunk, size: 21638 [annotate] [blame] [check-ins using] [diff] | |
2011-06-05
| ||
22:26 | Nicer API for serialization. file: [4dfae6fcca] check-in: [29988c434b] user: js, branch: trunk, size: 21641 [annotate] [blame] [check-ins using] [diff] | |
2011-05-04
| ||
22:22 | Documentation improvements. file: [78d403774f] check-in: [851e47d743] user: js, branch: trunk, size: 21511 [annotate] [blame] [check-ins using] [diff] | |
2011-04-24
| ||
21:50 | Add -[finalize] to all classes which would require it once we have GC. file: [e69c1ca6c9] check-in: [07b3d0e8de] user: js, branch: trunk, size: 21384 [annotate] [blame] [check-ins using] [diff] | |
18:30 | Add _NSPrintForDebugger. file: [e4b8e27eb3] check-in: [ff381fe8ba] user: js, branch: trunk, size: 20776 [annotate] [blame] [check-ins using] [diff] | |
2011-04-22
| ||
20:19 | More style improvements. file: [f33de6810c] check-in: [e76a7f52c1] user: js, branch: trunk, size: 20688 [annotate] [blame] [check-ins using] [diff] | |
16:23 | Various style improvements. file: [b8a2ef4dd8] check-in: [c7e66feb30] user: js, branch: trunk, size: 20462 [annotate] [blame] [check-ins using] [diff] | |
2011-04-11
| ||
00:37 | A few readability improvements. file: [59829ea342] check-in: [e52ccc8d45] user: js, branch: trunk, size: 20432 [annotate] [blame] [check-ins using] [diff] | |
2011-04-03
| ||
18:49 | Use __BIGGEST_ALIGNMENT__ if available. file: [66f93123ef] check-in: [03f5fe299c] user: js, branch: trunk, size: 20443 [annotate] [blame] [check-ins using] [diff] | |
17:02 | Fix -[performSelector:] and friends. file: [5b4c20a0f2] check-in: [3398436156] user: js, branch: trunk, size: 20318 [annotate] [blame] [check-ins using] [diff] | |
2011-03-27
| ||
17:51 | Pass the causing object for OFEnumerationMutationExceptions. file: [8f8e235cfd] check-in: [f072e1a338] user: js, branch: trunk, size: 20212 [annotate] [blame] [check-ins using] [diff] | |
2011-03-25
| ||
12:30 | Add -[performSelector:] and friends to OFObject. file: [fc3fc31d4e] check-in: [c3f3576af4] user: js, branch: trunk, size: 20189 [annotate] [blame] [check-ins using] [diff] | |
2011-03-24
| ||
19:42 | Get rid of OFExceptions.h. file: [fde9d39d7a] check-in: [cda44767f4] user: js, branch: trunk, size: 19732 [annotate] [blame] [check-ins using] [diff] | |
2011-03-23
| ||
12:58 |
Make the return type of retainCount unsigned int. This way, the OFObject protocol is compatible to NSObject. file: [e58d7ba883] check-in: [8de8df50e9] user: js, branch: trunk, size: 19442 [annotate] [blame] [check-ins using] [diff] | |
2011-03-22
| ||
00:55 | Add -Wshorten-64-to-32. file: [73e373ae9d] check-in: [6d4dfb5bc7] user: js, branch: trunk, size: 19427 [annotate] [blame] [check-ins using] [diff] | |
2011-03-11
| ||
16:47 | Get rid of warnings when using latest clang. file: [83c3cca2e3] check-in: [36c4b260aa] user: js, branch: trunk, size: 19447 [annotate] [blame] [check-ins using] [diff] | |
2011-03-10
| ||
19:54 |
Call C++ constructors and destructors.
However, this only works with Apple GCC and Clang, but does not hurt | |
2011-02-10
| ||
20:41 |
More work on the PSP port. Outputting text now works - with colours! file: [ffdb3bc597] check-in: [3273f141b3] user: js, branch: trunk, size: 18264 [annotate] [blame] [check-ins using] [diff] | |
2011-02-09
| ||
19:34 | More changes to port ObjFW to PSP. file: [0e939837b3] check-in: [33f646ce2d] user: js, branch: trunk, size: 18263 [annotate] [blame] [check-ins using] [diff] | |
2011-01-29
| ||
19:16 | Use %@ where it is useful. file: [a091595654] check-in: [d0eace5cd1] user: js, branch: trunk, size: 18218 [annotate] [blame] [check-ins using] [diff] | |
2011-01-14
| ||
11:01 |
It can never happen that we don't have threads and atomic ops. If we don't have threads, everything is atomic. file: [a02b47cd7d] check-in: [c50d483262] user: js, branch: trunk, size: 18236 [annotate] [blame] [check-ins using] [diff] | |
2011-01-01
| ||
20:19 | Change license. file: [07b4e58e79] check-in: [da6b3d26cb] user: js, branch: trunk, size: 18415 [annotate] [blame] [check-ins using] [diff] | |
2010-12-28
| ||
22:18 | Make ObjFW work again without threads and without atomic ops. file: [b33c6cd1e8] check-in: [88c920bd62] user: js, branch: trunk, size: 18159 [annotate] [blame] [check-ins using] [diff] | |
2010-12-18
| ||
23:39 |
Add support for the new GNU runtime.
Currently, the properties test for nonatomic fails. This is a bug in | |
2010-12-11
| ||
20:27 | Rename a few exception-related methods. file: [5f364917f3] check-in: [5e44debc07] user: js, branch: trunk, size: 17812 [annotate] [blame] [check-ins using] [diff] | |
2010-12-10
| ||
11:21 | Documentation fixes. file: [72238fc133] check-in: [fada60d54c] user: js, branch: trunk, size: 17782 [annotate] [blame] [check-ins using] [diff] | |
2010-11-16
| ||
00:50 | Remove a useless #ifdef in OFObject.m. file: [4cf881420b] check-in: [57dd60897f] user: js, branch: trunk, size: 17814 [annotate] [blame] [check-ins using] [diff] | |
00:40 | -[className] and +[className] now return an OFString. file: [5ec7131f1a] check-in: [2011b7b91c] user: js, branch: trunk, size: 17916 [annotate] [blame] [check-ins using] [diff] | |
2010-11-13
| ||
21:57 | Add -[description] for OFObject, OFString, OFArray and OFDictionary. file: [115db6d7a7] check-in: [9b50b86632] user: js, branch: trunk, size: 17842 [annotate] [blame] [check-ins using] [diff] | |
2010-10-31
| ||
21:59 | More atomic operations. file: [0624e5a61b] check-in: [dd061ee65e] user: js, branch: trunk, size: 17574 [annotate] [blame] [check-ins using] [diff] | |
2010-09-19
| ||
22:39 | Add -[typeEncodingForSelector] and +[typeEncodingForInstanceSelector:]. file: [25a48a48d7] check-in: [477d06da14] user: js, branch: trunk, size: 17619 [annotate] [blame] [check-ins using] [diff] | |
2010-09-07
| ||
09:10 | Rename +[addObjectToTopmostPool:] to +[addObject:]. file: [4840601dc7] check-in: [eafb8d18ed] user: js, branch: trunk, size: 16009 [annotate] [blame] [check-ins using] [diff] | |
2010-09-05
| ||
23:19 |
Replace OFObject* with id in many places.
We assume now that every object understands retain, release, etc. so | |
2010-08-25
| ||
22:05 |
Better way to cache OFAutoreleasePool. This way, the tests work again with static linking. file: [f4894aef60] check-in: [f2f4062b53] user: js, branch: trunk, size: 16029 [annotate] [blame] [check-ins using] [diff] | |
2010-07-08
| ||
10:04 | Clean up method replacing. file: [b60749cd23] check-in: [fdcb2a71e4] user: js, branch: trunk, size: 15901 [annotate] [blame] [check-ins using] [diff] | |
09:44 |
Cache OFAutoreleasePool class.
This improves performance with the GNU runtime, where looking up a class | |
2010-05-05
| ||
17:21 | Rename method replacement methods - the old names were too long. file: [1881ae5509] check-in: [bce7bbddf4] user: js, branch: trunk, size: 15698 [annotate] [blame] [check-ins using] [diff] | |
2010-05-04
| ||
12:25 | Only allow subclasses for +[replace*Method:with*MethodFromClass:]. file: [721d4fa462] check-in: [252833ad30] user: js, branch: trunk, size: 15709 [annotate] [blame] [check-ins using] [diff] | |
2010-04-17
| ||
16:09 | Give the methods in OFNumber better names. file: [7e95f15bf5] check-in: [2517f18272] user: js, branch: trunk, size: 15457 [annotate] [blame] [check-ins using] [diff] | |
15:46 | Don't return self where not necessary, return void or something useful. file: [224d3accf3] check-in: [062a052b50] user: js, branch: trunk, size: 15473 [annotate] [blame] [check-ins using] [diff] | |
2010-04-01
| ||
23:51 | Add support for ObjFW-RT, the ObjFW Objective C runtime. file: [6d2f924ac1] check-in: [8c2755723a] user: js, branch: trunk, size: 15484 [annotate] [blame] [check-ins using] [diff] | |
20:57 |
Improve method replacing when using the Apple runtime.
This prevents replacing the method of a superclass when the method is | |
2010-03-13
| ||
21:24 | Add global variable of_pagesize and use it to reduce code duplication. file: [4bc8df336e] check-in: [382ed34d40] user: js, branch: trunk, size: 15256 [annotate] [blame] [check-ins using] [diff] | |
2010-03-05
| ||
11:52 |
Merge a few changesets from the default branch into the 0.2 branch.
Changesets: | |
2010-03-04
| ||
21:37 | GCC always defines self as struct objc_class, even for class methods. file: [864eafb36e] check-in: [19890b42b2] user: js, branch: trunk, size: 15004 [annotate] [blame] [check-ins using] [diff] | |
12:28 | Add +[setImplemenation:forClassMethod:] and friends. file: [69ac875773] check-in: [a4b1a005b6] user: js, branch: trunk, size: 14963 [annotate] [blame] [check-ins using] [diff] | |
2010-02-24
| ||
23:00 |
Rename -[replaceMethod:withMethodFromClass:] and friends. The rename was needed as these replace instance methods. file: [3fb2c436d1] check-in: [b156ec8284] user: js, branch: trunk, size: 13494 [annotate] [blame] [check-ins using] [diff] | |
2010-02-19
| ||
16:36 | Update copyright. file: [591acb6dd3] check-in: [42886185fd] user: js, branch: trunk, size: 13464 [annotate] [blame] [check-ins using] [diff] | |
2010-02-16
| ||
12:11 | Fix a typo. file: [4fdd97e3c7] check-in: [cdea8f326d] user: js, branch: trunk, size: 13464 [annotate] [blame] [check-ins using] [diff] | |
2010-02-10
| ||
20:30 | Documentation improvements. file: [66bcfdea6b] check-in: [6a65366467] user: js, branch: trunk, size: 13458 [annotate] [blame] [check-ins using] [diff] | |
2010-02-07
| ||
14:15 | Reduce #ifdefs in OFObject.m. file: [4674410a8d] check-in: [623c89300a] user: js, branch: trunk, size: 13426 [annotate] [blame] [check-ins using] [diff] | |
14:09 | Add +[superclass] to OFObject. file: [eeb1a8282b] check-in: [047af7a8ad] user: js, branch: trunk, size: 13652 [annotate] [blame] [check-ins using] [diff] | |
2010-02-05
| ||
14:03 | Rename of_atomic_*32 to of_atomic_*_32 and add of_atomic_cmpswap_ptr. file: [a529b1aaf1] check-in: [4e1ab53403] user: js, branch: trunk, size: 13518 [annotate] [blame] [check-ins using] [diff] | |
2010-02-02
| ||
18:58 | Rename OFMacros.h to macros.h, as it's not a class. file: [747590c79e] check-in: [832188d759] user: js, branch: trunk, size: 13516 [annotate] [blame] [check-ins using] [diff] | |
2010-01-31
| ||
22:05 | Small optimization. file: [357eadb4d2] check-in: [305317e5ea] user: js, branch: trunk, size: 13518 [annotate] [blame] [check-ins using] [diff] | |
2010-01-30
| ||
12:46 | Change -[retainCount] back to size_t and cast, so we keep the old API. file: [695579ca2f] check-in: [2cb37ce407] user: js, branch: trunk, size: 13516 [annotate] [blame] [check-ins using] [diff] | |
10:47 | Check return value of of_spinlock_*. file: [7ae92c5eec] check-in: [8a97fac06f] user: js, branch: trunk, size: 13466 [annotate] [blame] [check-ins using] [diff] | |
01:50 | Fall back to spinlocks if atomic ops are unavailable. file: [415ea37dd0] check-in: [bd6a71aad3] user: js, branch: trunk, size: 13343 [annotate] [blame] [check-ins using] [diff] | |
01:17 | Change spinlock implementation, add fallbacks and move to threading.h. file: [f35a66b387] check-in: [921b158d17] user: js, branch: trunk, size: 12757 [annotate] [blame] [check-ins using] [diff] | |
2010-01-29
| ||
15:21 | Make retain count int32_t. file: [14884d461d] check-in: [b725e983ae] user: js, branch: trunk, size: 12519 [annotate] [blame] [check-ins using] [diff] | |
2010-01-25
| ||
15:22 | Make retain counter 32 bit due to atomic ops being 32 bit. file: [490f2fcff3] check-in: [831ebcd4f5] user: js, branch: trunk, size: 12528 [annotate] [blame] [check-ins using] [diff] | |
2010-01-24
| ||
18:54 | Make retain/release atomic. file: [1a2c0cda4c] check-in: [b4a9924066] user: js, branch: trunk, size: 12472 [annotate] [blame] [check-ins using] [diff] | |
2010-01-17
| ||
13:11 | uintptr_t might be better here. file: [844da0afa5] check-in: [453532ccf3] user: js, branch: trunk, size: 12420 [annotate] [blame] [check-ins using] [diff] | |
2010-01-16
| ||
13:18 | Make properties work with the Apple runtime. file: [e24c28f144] check-in: [4c069e571f] user: js, branch: trunk, size: 12419 [annotate] [blame] [check-ins using] [diff] | |
2010-01-04
| ||
14:29 |
Backport a few fixes from default branch to 0.1.
This includes the following revisions: | |
00:18 | Fix forgotten static for enumeration_mutation_handler. file: [42e8feff00] check-in: [c46f609578] user: js, branch: trunk, size: 11774 [annotate] [blame] [check-ins using] [diff] | |
2010-01-03
| ||
19:38 | Throw an exception when trying to use +[dealloc]. file: [5be7057eec] check-in: [5e88aed650] user: js, branch: trunk, size: 11757 [annotate] [blame] [check-ins using] [diff] | |
18:48 | Check for objc_enumerationMutation and provide it if it's missing. file: [c5b8c0b3b5] check-in: [2c40c95434] user: js, branch: trunk, size: 11675 [annotate] [blame] [check-ins using] [diff] | |
17:22 | Add OFFastEnumeration protocol and OFEnumerationMutationException. file: [529e251348] check-in: [9a881883be] user: js, branch: trunk, size: 11567 [annotate] [blame] [check-ins using] [diff] | |
2009-12-09
| ||
18:43 | Indent defines and imports where it is useful. file: [ff3d52f1b1] check-in: [66f6ca045c] user: js, branch: trunk, size: 11347 [annotate] [blame] [check-ins using] [diff] | |
2009-12-05
| ||
11:06 | Add +[isSubclassOfClass:] to OFObject. file: [6eaebd22dd] check-in: [c7bfcc9e92] user: js, branch: trunk, size: 11345 [annotate] [blame] [check-ins using] [diff] | |
2009-12-02
| ||
20:02 | Introduce some consistency when to use OFObject* and when to use id. file: [6b6a2eea9a] check-in: [c7ab3a46d1] user: js, branch: trunk, size: 11066 [annotate] [blame] [check-ins using] [diff] | |
2009-12-01
| ||
13:35 | Better checking which runtime we use. file: [e42ffed2f9] check-in: [240b72cd71] user: js, branch: trunk, size: 11059 [annotate] [blame] [check-ins using] [diff] | |
2009-11-29
| ||
16:23 | Allow NULL as parameter for -[freeMemory:]. file: [f65ab03140] check-in: [d57228d9d6] user: js, branch: trunk, size: 11060 [annotate] [blame] [check-ins using] [diff] | |
2009-11-15
| ||
01:17 | Add +[load] to OFObject. file: [81f4a12608] check-in: [1bae432025] user: js, branch: trunk, size: 11026 [annotate] [blame] [check-ins using] [diff] | |
2009-11-09
| ||
22:45 | Rename libobjfw to ObjFW. file: [4c1f43e6bd] check-in: [a3cc34b139] user: js, branch: trunk, size: 11008 [annotate] [blame] [check-ins using] [diff] | |
2009-10-19
| ||
08:29 |
Fix a bug in -[freeMemory:].
This could be an out of bounds write if the last element is free'd, Additionally, if the realloc to make it smaller fails, we just ignore | |
2009-08-26
| ||
19:40 | Improve documentation. file: [02f24ce790] check-in: [146db53e4a] user: js, branch: trunk, size: 11010 [annotate] [blame] [check-ins using] [diff] | |
2009-08-12
| ||
15:37 | Rename +[name] and -[name] to +[className] and -[className]. file: [344bd01fa3] check-in: [ce8d36d5c4] user: js, branch: trunk, size: 11010 [annotate] [blame] [check-ins using] [diff] | |
2009-07-19
| ||
14:05 | Rename andFoo: to foo: in all methods. file: [bc5794b890] check-in: [4eae61a78f] user: js, branch: trunk, size: 11000 [annotate] [blame] [check-ins using] [diff] | |
2009-06-30
| ||
14:22 | Add +[instanceMethodForSelector:] to OFObject. file: [cb5875a194] check-in: [0707c56762] user: js, branch: trunk, size: 11000 [annotate] [blame] [check-ins using] [diff] | |
14:15 | Add +[instancesRespondToSelector:] to OFObject. file: [b8dec711ff] check-in: [5f47e81a9e] user: js, branch: trunk, size: 10786 [annotate] [blame] [check-ins using] [diff] | |
12:07 |
A few renames in OFObject, see details.
* +[conformsTo:] to +[conformsToProtocol:]. | |
2009-06-10
| ||
15:31 | Add +[setImplementation:forMethod:]. file: [afcd5f1e07] check-in: [b10efe7b2b] user: js, branch: trunk, size: 10523 [annotate] [blame] [check-ins using] [diff] | |
2009-06-09
| ||
23:28 | Update the dtable so we can replace methods at runtime. file: [da7bffba83] check-in: [c70922ee1c] user: js, branch: trunk, size: 10350 [annotate] [blame] [check-ins using] [diff] | |
13:01 |
Use #import "*.h" instead of #import <*.h> in objfw.h.
We need this because we don't add the objfw include path to the | |
2009-06-02
| ||
17:21 | Take care of the root metaclass's super being the root class. file: [936af7ddb3] check-in: [4c343b7841] user: js, branch: trunk, size: 10088 [annotate] [blame] [check-ins using] [diff] | |
2009-06-01
| ||
12:20 | Add +[conformsTo:] and -[conformsTo:]. file: [089ffd7efa] check-in: [5008910e85] user: js, branch: trunk, size: 8913 [annotate] [blame] [check-ins using] [diff] | |
2009-05-29
| ||
19:21 |
A few renames.
OFExceptions: OFObject: OFString: | |
2009-05-25
| ||
17:00 |
Improve objc_sync.m.
* Use inline functions to improve code readability. | |
2009-05-24
| ||
21:51 | Don't use @defs - it's not available in the ObjC2 ABI. file: [3d254d43a1] check-in: [4cd4d94ea8] user: js, branch: trunk, size: 8020 [annotate] [blame] [check-ins using] [diff] | |
18:04 | Always use #include "config.h" instead of #import "config.h". file: [b3df5176b4] check-in: [94ea6848a8] user: js, branch: trunk, size: 8039 [annotate] [blame] [check-ins using] [diff] | |
2009-05-23
| ||
21:53 |
A few renames.
OFArray: OFAutoreleasePool: OFDataArray: OFObject: | |
2009-05-16
| ||
11:47 | Use @defs in preallocated OFAllocFailedException struct. file: [74f9d21734] check-in: [fa64faf81e] user: js, branch: trunk, size: 8021 [annotate] [blame] [check-ins using] [diff] | |
2009-05-13
| ||
20:39 |
Let - release return void again.
If you want to know if it will be released, you can just get the retain | |
20:31 | Rename - free to - (void)dealloc. file: [e6b5b1a83b] check-in: [9e6dd00ef5] user: js, branch: trunk, size: 8030 [annotate] [blame] [check-ins using] [diff] | |
19:49 | There's no need for + initialize to return anything. file: [168ac17ab0] check-in: [917188fdcc] user: js, branch: trunk, size: 8019 [annotate] [blame] [check-ins using] [diff] | |
2009-05-03
| ||
21:33 |
Get rid of + new. Additionally, make - accept return an autoreleased OFTCPSocket. file: [0826af6e82] check-in: [5ca127891c] user: js, branch: trunk, size: 8027 [annotate] [blame] [check-ins using] [diff] | |
15:10 | Get rid of another useless variable. file: [ed4919e346] check-in: [2cec8a76d7] user: js, branch: trunk, size: 8067 [annotate] [blame] [check-ins using] [diff] | |
14:48 |
Don't throw an OFNoMemException in - freeMem:. It won't help anyway.
If there's not even enough memory to make the list of memchunks Additionally, the OFOutOfRangeException was replaced by an assert. It | |
2009-04-26
| ||
12:44 |
A few renames in OFObject.
getMemWithSize: -> allocWithSize: | |
2009-04-22
| ||
22:43 | gcc seems to accept a @throw instead of a return as well. file: [352bb910bc] check-in: [8dbc052d49] user: js, branch: trunk, size: 8237 [annotate] [blame] [check-ins using] [diff] | |
2009-04-21
| ||
18:07 | Remove useless + load from OFObject. file: [290156f650] check-in: [ba65a43f3f] user: js, branch: trunk, size: 8347 [annotate] [blame] [check-ins using] [diff] | |
16:47 |
Throw OFAllocFailedException instead of returning nil. This exception is quite special, look at the documentation for details. file: [1a0aed77e1] check-in: [a1a5bfb3cd] user: js, branch: trunk, size: 8407 [annotate] [blame] [check-ins using] [diff] | |
2009-04-20
| ||
01:42 | Partly revert 13945ed73147 and add testcase. file: [18bfba4e77] check-in: [6e4eb3c2ec] user: js, branch: trunk, size: 8239 [annotate] [blame] [check-ins using] [diff] | |
2009-04-19
| ||
20:34 |
Use isa instead of [self class].
Since we don't use Object anymore and define isa in OFObject, we can | |
20:19 |
Actually, it makes sense that - release returns self. This way, you can check if the object has been free'd, for example using if ((obj = [obj release]) == nil). file: [deb9ba26f1] check-in: [348b389736] user: js, branch: trunk, size: 8323 [annotate] [blame] [check-ins using] [diff] | |
17:37 |
Remove forwarding methods. See long commit message for details.
There are two resons for removing it: First, OFPlugin does not need forwarding anymore. Second is that In GNU libobjc, objc_msg_sendv is implemented using __builtin_apply, Now the Apple runtime has a similar problem: There is no objc_msgSendv Writing those 3 ASM implementations (or 5, so we don't depend on ObjC1 forward:: and performv:: were only designed to return scalar types. But While this works for forwarding due to the ABI on x86 (and the ABIs on This is why I decided to remove forwarding and performv:: from libobjfw | |
2009-04-16
| ||
17:18 | Get rid of dependency on method_getSizeOfArguments. file: [7381da9158] check-in: [345716d824] user: js, branch: trunk, size: 10155 [annotate] [blame] [check-ins using] [diff] | |
2009-04-15
| ||
20:31 |
Workaround for wrong length of OFConstStrings on PPC64 OS X. Apple does a strange thing there: The length is only 32 bit, followed by another 32 bit which seem to be garbage. file: [4cc42158d1] check-in: [9b3e9e6895] user: js, branch: trunk, size: 9302 [annotate] [blame] [check-ins using] [diff] | |
2009-04-12
| ||
14:51 |
Get rid of the dependency on Object.
This allows libobjfw to run on ObjC2-only runtimes like the one on the | |
2009-03-04
| ||
20:49 | - release should not be chained, might be free'd. Therefore return void. file: [1ab2516eb4] check-in: [e73e76e40f] user: js, branch: trunk, size: 5006 [annotate] [blame] [check-ins using] [diff] | |
2009-02-27
| ||
11:17 | Add - hash for OFArray and OFString, main implementation in OFMacros. file: [b132f8aa53] check-in: [ffd26c8238] user: js, branch: trunk, size: 5022 [annotate] [blame] [check-ins using] [diff] | |
2009-02-15
| ||
16:40 | Get rid of OFComparable and make it part of OFObject. file: [091b00dab8] check-in: [d9308adc2b] user: js, branch: trunk, size: 5033 [annotate] [blame] [check-ins using] [diff] | |
2009-02-14
| ||
17:26 |
Always use #include for libc headers due to glibc being broken. Do the same for win32 headers, just in case. They should work with #import, but you never know ;). file: [9d1bddfff6] check-in: [029511474c] user: js, branch: trunk, size: 4800 [annotate] [blame] [check-ins using] [diff] | |
2009-01-06
| ||
22:38 |
Use OFList and OFArray in OFAutoreleasePool. This reduces code duplication and looks far better. file: [f1ae449a76] check-in: [dfc10dbeb8] user: js, branch: trunk, size: 4797 [annotate] [blame] [check-ins using] [diff] | |
2009-01-05
| ||
00:59 | Update copyright. file: [c1018bac67] check-in: [f1b749d113] user: js, branch: trunk, size: 4746 [annotate] [blame] [check-ins using] [diff] | |
00:56 | Initial OFAutoreleasePool - still needs a *lot* of testing. file: [7210a76063] check-in: [b412845664] user: js, branch: trunk, size: 4739 [annotate] [blame] [check-ins using] [diff] | |
2009-01-04
| ||
01:40 | Clean up exceptions. file: [027dbab7f0] check-in: [bb1fe89478] user: js, branch: trunk, size: 4490 [annotate] [blame] [check-ins using] [diff] | |
2008-12-24
| ||
16:11 | Let libobjc free our objects. file: [e51bd21762] check-in: [e9aa88be06] user: js, branch: trunk, size: 4418 [annotate] [blame] [check-ins using] [diff] | |
11:55 | Add methods to initalize from and append from formatted C strings. file: [239d0ace71] check-in: [486760ed2b] user: js, branch: trunk, size: 4423 [annotate] [blame] [check-ins using] [diff] | |
2008-12-23
| ||
03:59 | Remove spaces and tabs at end of line. file: [59a115d6f5] check-in: [7d7b89d775] user: js, branch: trunk, size: 3873 [annotate] [blame] [check-ins using] [diff] | |
01:57 | Check for SIZE_T, fallback to SIZE_T_MAX or define as (size_t)-1. file: [6f88f8ea70] check-in: [c180b76560] user: js, branch: trunk, size: 3878 [annotate] [blame] [check-ins using] [diff] | |
2008-12-22
| ||
22:00 | This isn't needed anymore. file: [a8fcc0b239] check-in: [1d99bea306] user: js, branch: trunk, size: 3859 [annotate] [blame] [check-ins using] [diff] | |
2008-12-09
| ||
17:36 |
Don't use - raise anymore, but @throw. - raise was only because at first, exceptions were self-raising, but this was later changed so they had to be risen manually. - rise was introduced for that, but it would've been better to use @throw directly. Thus, this change now. file: [19577f9cbf] check-in: [d88aec8e95] user: js, branch: trunk, size: 3945 [annotate] [blame] [check-ins using] [diff] | |
2008-12-07
| ||
02:53 | Add writeCString and writeWideCString to OFStream. file: [16b59ee246] check-in: [6ed7c33611] user: js, branch: trunk, size: 3938 [annotate] [blame] [check-ins using] [diff] | |
2008-11-29
| ||
11:59 | Optimize branch prediction for ifs inside loops. file: [c722de15cb] check-in: [92c12b1d4f] user: js, branch: trunk, size: 3977 [annotate] [blame] [check-ins using] [diff] | |
2008-11-08
| ||
21:52 | Further optimize OFObject. file: [c0fb34ec43] check-in: [c6ee6a2870] user: js, branch: trunk, size: 3878 [annotate] [blame] [check-ins using] [diff] | |
20:28 | Optimize OFObject. file: [9ea6f8965e] check-in: [14ba9e517b] user: js, branch: trunk, size: 3784 [annotate] [blame] [check-ins using] [diff] | |
2008-11-07
| ||
17:25 | Implementation for OFBigArray. file: [f326f71c26] check-in: [59f16e8a3d] user: js, branch: trunk, size: 3234 [annotate] [blame] [check-ins using] [diff] | |
2008-11-05
| ||
16:11 | OFOverflowException -> OFOutOfRangeException. file: [014c4c85fd] check-in: [3577c0d81c] user: js, branch: trunk, size: 3234 [annotate] [blame] [check-ins using] [diff] | |
2008-11-02
| ||
00:27 | Some fixes for OFObject. file: [6aad9c4888] check-in: [9ff3dbe9f9] user: js, branch: trunk, size: 3230 [annotate] [blame] [check-ins using] [diff] | |
2008-11-01
| ||
22:20 | Some exception stuff & withSize -> ofSize for OFObject. file: [99a5765c29] check-in: [9944a6f8a4] user: js, branch: trunk, size: 2955 [annotate] [blame] [check-ins using] [diff] | |
21:47 | Allow using [ofobject resizeMem: NULL toSize: size]. file: [dfdab0e3f3] check-in: [a6b45eec2f] user: js, branch: trunk, size: 2942 [annotate] [blame] [check-ins using] [diff] | |
2008-10-29
| ||
17:29 |
Add getMemForNItems:withSize: & resizeMem:toNItems:withSize: in OFObject
Additionally, interface for OFArray. file: [504a3629c1] check-in: [49859c2bcc] user: js, branch: trunk, size: 2885 [annotate] [blame] [check-ins using] [diff] | |
2008-10-26
| ||
20:54 | Return self when we have no return value. This allows nesting. file: [fdc15c6565] check-in: [8ae4c59cd6] user: js, branch: trunk, size: 2332 [annotate] [blame] [check-ins using] [diff] | |
2008-10-25
| ||
22:28 |
Decided we don't want @"" anyway. Thus remove our own alloc.
We don't need it anymore as there is no reason left to have our memory | |
2008-10-22
| ||
13:32 |
Reworked OFObject and added append(Wide)CString to OFString.
The reworked OFObject lets one test fail on the GNU runtime. | |
2008-10-09
| ||
00:25 |
Multiple changes, see details.
* Use config.h. | |
2008-10-08
| ||
23:15 |
Multiple changes, see details.
* OFObject getMem: renamd to getMemWithSize:. | |
2008-10-07
| ||
17:18 | Added OFFile. file: [deca1fe096] check-in: [71119a787b] user: js, branch: trunk, size: 2145 [annotate] [blame] [check-ins using] [diff] | |
2008-09-14
| ||
19:03 | More exceptions stuff. file: [0937ee4297] check-in: [98fe076bd8] user: js, branch: trunk, size: 2137 [annotate] [blame] [check-ins using] [diff] | |
16:43 |
Lots of changes. See full commit message.
* Updated buildsys to fixed version. | |
15:29 | Coding style. file: [b460fe3dcf] check-in: [778be56179] user: js, branch: trunk, size: 1964 [annotate] [blame] [check-ins using] [diff] | |
2008-09-12
| ||
13:25 | Added: Initial import. file: [3a6fe1669c] check-in: [a580136c80] user: js, branch: trunk, size: 1900 [annotate] [blame] [check-ins using] | |