// // $Id: PGPostgresResult.h 3860 2012-09-24 11:36:57Z stuart02 $ // // PGPostgresResult.h // PostgresKit // // Copyright (c) 2008-2009 David Thorpe, djt@mutablelogic.com // // Forked by the Sequel Pro Team on July 22, 2012. // // Licensed under the Apache License, Version 2.0 (the "License"); you may not // use this file except in compliance with the License. You may obtain a copy of // the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the // License for the specific language governing permissions and limitations under // the License. @class PGPostgresConnection; // Result set row types typedef enum { PGPostgresResultRowAsArray = 1, PGPostgresResultRowAsDictionary = 2 } PGPostgresResultRowType; @interface PGPostgresResult : NSObject { void *_result; void **_typeHandlers; unsigned long long _row; unsigned long long _numberOfRows; NSUInteger _numberOfFields; NSString **_fields; NSStringEncoding _stringEncoding; PGPostgresResultRowType _defaultRowType; PGPostgresConnection *_connection; } /** * @property numberOfFields The number of fields this result has. */ @property (readonly) NSUInteger numberOfFields; /** * @property numberOfRows The number or rows this result contains or were affected * by the associated query. */ @property (readonly) unsigned long long numberOfRows; /** * @property stringEncoding The ecoding that was in use when this result was created. */ @property (readonly) NSStringEncoding stringEncoding; /** * @property defaultRowType The row type that should be used when calling -row. */ @property (readwrite, assign) PGPostgresResultRowType defaultRowType; - (id)initWithResult:(void *)result connection:(PGPostgresConnection *)connection; - (NSUInteger)numberOfFields; - (void)seekToRow:(unsigned long long)row; - (NSArray *)fields; - (id)row; - (NSArray *)rowAsArray; - (NSDictionary *)rowAsDictionary; - (id)rowAsType:(PGPostgresResultRowType)type; @end