mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 08:21:25 +00:00
Merge in changes from NET-Community.
Add DLL support on Windows platforms. Numerous minor bug fixes related to Windows platforms. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2420 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
e149f41c85
commit
4a99922d47
48 changed files with 2409 additions and 697 deletions
|
@ -122,6 +122,9 @@ extraRefCount (id anObject)
|
|||
{
|
||||
if (self == [NSObject class])
|
||||
{
|
||||
// Create the global lock
|
||||
gnustep_global_lock = [[NSRecursiveLock alloc] init];
|
||||
|
||||
retain_counts = o_map_with_callbacks (o_callbacks_for_non_owned_void_p,
|
||||
o_callbacks_for_int);
|
||||
retain_counts_gate = objc_mutex_allocate ();
|
||||
|
@ -746,3 +749,50 @@ extraRefCount (id anObject)
|
|||
}
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@implementation NSObject (OPENSTEP)
|
||||
|
||||
/* OPENSTEP Object class extensions
|
||||
as distinquished from the OpenStep specification. */
|
||||
|
||||
- performSelector: (SEL)aSelector
|
||||
{
|
||||
IMP msg = objc_msg_lookup(self, aSelector);
|
||||
if (!msg)
|
||||
{
|
||||
[NSException
|
||||
raise: NSGenericException
|
||||
format: @"invalid selector passed to %s", sel_get_name(_cmd)];
|
||||
return nil;
|
||||
}
|
||||
return (*msg)(self, aSelector);
|
||||
}
|
||||
|
||||
- performSelector: (SEL)aSelector withObject: anObject
|
||||
{
|
||||
IMP msg = objc_msg_lookup(self, aSelector);
|
||||
if (!msg)
|
||||
{
|
||||
[NSException
|
||||
raise: NSGenericException
|
||||
format: @"invalid selector passed to %s", sel_get_name(_cmd)];
|
||||
return nil;
|
||||
}
|
||||
return (*msg)(self, aSelector, anObject);
|
||||
}
|
||||
|
||||
- performSelector: (SEL)aSelector withObject: object1 withObject: object2
|
||||
{
|
||||
IMP msg = objc_msg_lookup(self, aSelector);
|
||||
if (!msg)
|
||||
{
|
||||
[NSException
|
||||
raise: NSGenericException
|
||||
format: @"invalid selector passed to %s", sel_get_name(_cmd)];
|
||||
return nil;
|
||||
}
|
||||
return (*msg)(self, aSelector, object1, object2);
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue