mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 00:11:26 +00:00
Documented new functions
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@12741 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
b9e8659c52
commit
dc0470796f
2 changed files with 51 additions and 30 deletions
|
@ -91,9 +91,9 @@ GS_EXPORT void GSSetVariable(id obj, int offset, unsigned int size,
|
|||
* scalar types of data.
|
||||
*/
|
||||
GS_EXPORT id GSGetValue(NSObject *self, NSString *key, SEL sel,
|
||||
const char *type, unsigned size, int off);
|
||||
const char *type, unsigned size, int offset);
|
||||
GS_EXPORT void GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
||||
const char *type, unsigned size, int off);
|
||||
const char *type, unsigned size, int offset);
|
||||
|
||||
/*
|
||||
* The following three functions are deprecated and will be removed in future
|
||||
|
|
|
@ -193,9 +193,19 @@ GSSetInstanceVariable(id obj, NSString *iVarName, const void *data)
|
|||
|
||||
#include <Foundation/NSValue.h>
|
||||
#include <Foundation/NSKeyValueCoding.h>
|
||||
/**
|
||||
* This is used internally by the key-value coding methods, to get a
|
||||
* value from an object either via an accessor method (if sel is
|
||||
* supplied), or via direct access (if type, size, and offset are
|
||||
* supplied).<br />
|
||||
* Automatic conversion between NSNumber and C scalar types is performed.<br />
|
||||
* If type is nul and can't be determined from the selector, the
|
||||
* [NSObject-handleQueryWithUnboundKey:] method is called to try
|
||||
* to get a value.
|
||||
*/
|
||||
id
|
||||
GSGetValue(NSObject *self, NSString *key, SEL sel,
|
||||
const char *type, unsigned size, int off)
|
||||
const char *type, unsigned size, int offset)
|
||||
{
|
||||
if (sel != 0)
|
||||
{
|
||||
|
@ -225,7 +235,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(id *)((char *)self + off);
|
||||
v = *(id *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -244,7 +254,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(char *)((char *)self + off);
|
||||
v = *(char *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -263,7 +273,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(unsigned char *)((char *)self + off);
|
||||
v = *(unsigned char *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -283,7 +293,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(short *)((char *)self + off);
|
||||
v = *(short *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -302,7 +312,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(unsigned short *)((char *)self + off);
|
||||
v = *(unsigned short *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -322,7 +332,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(int *)((char *)self + off);
|
||||
v = *(int *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -341,7 +351,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(unsigned int *)((char *)self + off);
|
||||
v = *(unsigned int *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -361,7 +371,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(long *)((char *)self + off);
|
||||
v = *(long *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -380,7 +390,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(unsigned long *)((char *)self + off);
|
||||
v = *(unsigned long *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -401,7 +411,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(long long *)((char *)self + off);
|
||||
v = *(long long *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -422,7 +432,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(unsigned long long *)((char *)self + off);
|
||||
v = *(unsigned long long *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -443,7 +453,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(float *)((char *)self + off);
|
||||
v = *(float *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -462,7 +472,7 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
v = *(double *)((char *)self + off);
|
||||
v = *(double *)((char *)self + offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -493,9 +503,19 @@ GSGetValue(NSObject *self, NSString *key, SEL sel,
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This is used internally by the key-value coding methods, to set a
|
||||
* value in an object either via an accessor method (if sel is
|
||||
* supplied), or via direct access (if type, size, and offset are
|
||||
* supplied).<br />
|
||||
* Automatic conversion between NSNumber and C scalar types is performed.<br />
|
||||
* If type is nul and can't be determined from the selector, the
|
||||
* [NSObject-handleTakevalue:forUnboundKey:] method is called to try
|
||||
* to set a value.
|
||||
*/
|
||||
void
|
||||
GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
||||
const char *type, unsigned size, int off)
|
||||
const char *type, unsigned size, int offset)
|
||||
{
|
||||
if (sel != 0)
|
||||
{
|
||||
|
@ -523,7 +543,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
id *ptr = (id *)((char *)self + off);
|
||||
id *ptr = (id *)((char *)self + offset);
|
||||
|
||||
[*ptr autorelease];
|
||||
*ptr = [v retain];
|
||||
|
@ -544,7 +564,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
char *ptr = (char *)((char *)self + off);
|
||||
char *ptr = (char *)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -564,7 +584,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
unsigned char *ptr = (unsigned char*)((char *)self + off);
|
||||
unsigned char *ptr = (unsigned char*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -585,7 +605,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
short *ptr = (short*)((char *)self + off);
|
||||
short *ptr = (short*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -605,8 +625,9 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
unsigned short *ptr = (unsigned short*)((char *)self + off);
|
||||
unsigned short *ptr;
|
||||
|
||||
ptr = (unsigned short*)((char *)self + offset);
|
||||
*ptr = v;
|
||||
}
|
||||
else
|
||||
|
@ -626,7 +647,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
int *ptr = (int*)((char *)self + off);
|
||||
int *ptr = (int*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -646,7 +667,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
unsigned int *ptr = (unsigned int*)((char *)self + off);
|
||||
unsigned int *ptr = (unsigned int*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -667,7 +688,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
long *ptr = (long*)((char *)self + off);
|
||||
long *ptr = (long*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -687,7 +708,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
unsigned long *ptr = (unsigned long*)((char *)self + off);
|
||||
unsigned long *ptr = (unsigned long*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -709,7 +730,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
long long *ptr = (long long*)((char *)self + off);
|
||||
long long *ptr = (long long*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -732,7 +753,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
if (sel == 0)
|
||||
{
|
||||
unsigned long long *ptr = (unsigned long long*)((char*)self +
|
||||
off);
|
||||
offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -754,7 +775,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
float *ptr = (float*)((char *)self + off);
|
||||
float *ptr = (float*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
@ -774,7 +795,7 @@ GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
|
|||
|
||||
if (sel == 0)
|
||||
{
|
||||
double *ptr = (double*)((char *)self + off);
|
||||
double *ptr = (double*)((char *)self + offset);
|
||||
|
||||
*ptr = v;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue