aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Frameworks/PostgresKit/Source/FLXPostgresTypeDateTimeHandler.m2
-rw-r--r--Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.h5
-rw-r--r--Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.m3
-rw-r--r--Frameworks/PostgresKit/Source/FLXPostgresTypeHandlerProtocol.h2
-rw-r--r--Frameworks/PostgresKit/Source/FLXPostgresTypeNumberHandler.m2
-rw-r--r--Frameworks/PostgresKit/Source/FLXPostgresTypeStringHandler.m20
6 files changed, 23 insertions, 11 deletions
diff --git a/Frameworks/PostgresKit/Source/FLXPostgresTypeDateTimeHandler.m b/Frameworks/PostgresKit/Source/FLXPostgresTypeDateTimeHandler.m
index 2dbd6c28..25b74b4c 100644
--- a/Frameworks/PostgresKit/Source/FLXPostgresTypeDateTimeHandler.m
+++ b/Frameworks/PostgresKit/Source/FLXPostgresTypeDateTimeHandler.m
@@ -73,7 +73,7 @@ static FLXPostgresOid FLXPostgresTypeDateTimeTypes[] =
return nil;
}
-- (id)objectFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column
+- (id)objectFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column
{
FLXPostgresOid type = PQftype(result, column);
diff --git a/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.h b/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.h
index f2808d52..1b3146b8 100644
--- a/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.h
+++ b/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.h
@@ -25,6 +25,11 @@
@interface FLXPostgresTypeHandler : NSObject
{
+ NSUInteger _row;
+ NSUInteger _column;
+
+ const PGresult *_result;
+
FLXPostgresConnection *_connection;
}
diff --git a/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.m b/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.m
index a1b5fac6..a7b98909 100644
--- a/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.m
+++ b/Frameworks/PostgresKit/Source/FLXPostgresTypeHandler.m
@@ -25,9 +25,12 @@
@synthesize connection = _connection;
+#pragma mark -
+
- (id)initWithConnection:(FLXPostgresConnection *)connection
{
if ((self = [super init])) {
+ _result = nil;
_connection = [connection retain];
}
diff --git a/Frameworks/PostgresKit/Source/FLXPostgresTypeHandlerProtocol.h b/Frameworks/PostgresKit/Source/FLXPostgresTypeHandlerProtocol.h
index 5c05af63..a0c04c26 100644
--- a/Frameworks/PostgresKit/Source/FLXPostgresTypeHandlerProtocol.h
+++ b/Frameworks/PostgresKit/Source/FLXPostgresTypeHandlerProtocol.h
@@ -57,6 +57,6 @@
*
* @return An object represenation of the data.
*/
-- (id)objectFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column;
+- (id)objectFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column;
@end
diff --git a/Frameworks/PostgresKit/Source/FLXPostgresTypeNumberHandler.m b/Frameworks/PostgresKit/Source/FLXPostgresTypeNumberHandler.m
index 42db1b33..467a8821 100644
--- a/Frameworks/PostgresKit/Source/FLXPostgresTypeNumberHandler.m
+++ b/Frameworks/PostgresKit/Source/FLXPostgresTypeNumberHandler.m
@@ -145,7 +145,7 @@ static FLXPostgresOid FLXPostgresTypeNumberTypes[] =
return nil;
}
-- (id)objectFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column
+- (id)objectFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column
{
FLXPostgresOid type = PQftype(result, column);
NSUInteger length = PQgetlength(result, row, column);
diff --git a/Frameworks/PostgresKit/Source/FLXPostgresTypeStringHandler.m b/Frameworks/PostgresKit/Source/FLXPostgresTypeStringHandler.m
index aa7adf2a..2c49ee64 100644
--- a/Frameworks/PostgresKit/Source/FLXPostgresTypeStringHandler.m
+++ b/Frameworks/PostgresKit/Source/FLXPostgresTypeStringHandler.m
@@ -45,9 +45,9 @@ static FLXPostgresOid FLXPostgresTypeStringTypes[] =
@interface FLXPostgresTypeStringHandler ()
-- (id)_stringFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column;
-- (id)_macAddressFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column;
-- (id)_inetAddressFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column type:(FLXPostgresOid)type;
+- (id)_stringFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column;
+- (id)_macAddressFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column;
+- (id)_inetAddressFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column type:(FLXPostgresOid)type;
@end
@@ -72,10 +72,14 @@ static FLXPostgresOid FLXPostgresTypeStringTypes[] =
return [NSArray arrayWithObject:@"NSCFString"];
}
-- (id)objectFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column
+- (id)objectFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column
{
FLXPostgresOid type = PQftype(result, column);
+ _row = row;
+ _column = column;
+ _result = result;
+
switch (type)
{
case FLXPostgresOidMacAddr:
@@ -111,7 +115,7 @@ static FLXPostgresOid FLXPostgresTypeStringTypes[] =
*
* @return A string representation of the value.
*/
-- (id)_stringFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column
+- (id)_stringFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column
{
const void *bytes = PQgetvalue(result, row, column);
NSUInteger length = PQgetlength(result, row, column);
@@ -130,7 +134,7 @@ static FLXPostgresOid FLXPostgresTypeStringTypes[] =
*
* @return A string representation of the MAC address.
*/
-- (id)_macAddressFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column
+- (id)_macAddressFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column
{
PGmacaddr address;
@@ -149,10 +153,10 @@ static FLXPostgresOid FLXPostgresTypeStringTypes[] =
*
* @return A string representation of the network address.
*/
-- (id)_inetAddressFromResult:(const PGresult *)result atRow:(unsigned int)row column:(unsigned int)column type:(FLXPostgresOid)type
+- (id)_inetAddressFromResult:(const PGresult *)result atRow:(NSUInteger)row column:(NSUInteger)column type:(FLXPostgresOid)type
{
PGinet inet;
-
+
if (!PQgetf(result, row, type == FLXPostgresOidInetAddr ? "%inet" : "%cidr", column, &inet)) return [NSNull null];
char ip[80];