theraven
abc1d44c9c
Fix handling of properties that refer to an instance variable other than the
...
default.
13 years ago
theraven
cdc31c6c0d
Fix class_addProperty().
...
Reported by Luboš Doležel!
13 years ago
theraven
3c8407c41d
Fix incorrect malloc size.
14 years ago
theraven
dc8be2905e
Add explicit cast to silence a warning.
14 years ago
theraven
4796a41e4e
Finished implementing the new runtime APIs.
14 years ago
theraven
663995f08c
Small cleanup. Use the ARC functions for retain / release / autorelease messages everywhere. This will make properties faster if we're using an ARC-compatible NSObject.
15 years ago
theraven
fe5d1b892a
Tweak GC check, make sure GC_init() is called even when ObjC code isn't using GC (stuff internal to the runtime may be)
15 years ago
theraven
e05c9c2ff5
More GC fixes
15 years ago
theraven
01237af0fc
Add GC-aware property accessors (in GC mode, we don't need all of the atomic juggling, because the GC looks after that stuff for us).
15 years ago
theraven
76ef007766
Actually return the correct value in case of races.
15 years ago
theraven
94f72f539b
Fixed thread safety for constructing property attributes.
15 years ago
theraven
8ee4d9c38a
Added implementation of property_getAttributes(). This is a horrible interface, both to implement and to use. We should add some better interfaces.
15 years ago
theraven
e198597bd3
Added support for associative references. Modified sync code to use this.
15 years ago
theraven
b416b31957
Property sizes should be specified in ptrdiff_t sizes.
15 years ago
theraven
661d406a8c
Added property structure copy functions.
15 years ago
ericwa
d56930241e
Stylistic fixes
16 years ago
ericwa
ed1c9d41eb
libobjc2: Add a pile of NULL checks. In general, any public function should be able to handle NULL for any object/class/selector/pointer to opaque structure without blowing up.
16 years ago
theraven
025688a2d5
Added property_getName(). Added non-portable API documentation.
16 years ago
theraven
d70523947b
Implement some missing runtime functions.
16 years ago
ericwa
7a2c302c5f
libobjc2: tweaks to build on Windows
16 years ago
theraven
352e721861
Changed ptrdiff_t to int in property accessors. This is for compatibility with some changes in clang that are required to prevent things from breaking on LP64 platforms.
...
It would be cleaner to use a ptrdiff_t here, but unfortunately we can't because the ivar_offset field in the runtime metadata is an int so ivar offsets beyond 4GB will not work on LP64 platforms.
This probably isn't a limitation. If you have more than 4GB of ivars in one object, you've done something badly wrong and probably shouldn't be allowed to write code anymore.
16 years ago
theraven
492b2315c1
Rewrote property locking to be faster and not require @synchronized (which breaks if you call it in the object's -dealloc method).
16 years ago
theraven
baed61c3e6
Added property support functions, NSBlock base classes and uncaught exception handler.
16 years ago