Skip to content

Commit fb5f81b

Browse files
ResultType (#14)
* working * more consistent comments * init * mini upd * working * remove generic
1 parent 6f9cfd3 commit fb5f81b

File tree

6 files changed

+27
-3
lines changed

6 files changed

+27
-3
lines changed

example/lib/main.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ Future<Response> fetch(Request _) async {
1919
return Response(
2020
[
2121
result.command == CommandType.select,
22+
result.query.resultType,
2223
...result.rows.map(rowToPrettyString),
2324
].join('\n\n'),
2425
);

lib/deno_postgres_interop.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ library;
44
export 'src/client.dart';
55
export 'src/command_type.dart';
66
export 'src/isolation_level.dart';
7+
export 'src/query.dart';
78
export 'src/query_client.dart';
89
export 'src/query_object.dart' show QueryArguments;
910
export 'src/query_object_result.dart';

lib/src/query.dart

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
import 'dart:js_interop';
2+
import 'dart:js_util';
3+
4+
import 'package:deno_postgres_interop/src/result_type.dart';
25

36
/// [[email protected]/Query](https://deno.land/x/[email protected]/query/query.ts?s=Query).
47
@JS()
5-
class Query<T> {}
8+
class Query {}
9+
10+
/// [[email protected]/Query](https://deno.land/x/[email protected]/query/query.ts?s=Query).
11+
extension QueryProps on Query {
12+
/// [[email protected]/Query/result_type](https://deno.land/x/[email protected]/query/query.ts?s=Query#prop_result_type).
13+
ResultType get resultType =>
14+
ResultType.values[getProperty(this, 'result_type')];
15+
}

lib/src/query_object_result.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ class QueryObjectResult<T> extends QueryResult {
1111
external List<String>? get columns;
1212

1313
/// [[email protected]/QueryResult/constructor](https://deno.land/x/[email protected]/query/query.ts?s=QueryResult#ctor_0).
14-
external factory QueryObjectResult(Query<dynamic> query);
14+
external factory QueryObjectResult(Query query);
1515
}
1616

1717
/// [[email protected]/QueryObjectResult](https://deno.land/x/[email protected]/query/query.ts?s=QueryObjectResult).

lib/src/query_result.dart

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,14 @@ import 'dart:js_interop';
22
import 'dart:js_util';
33

44
import 'package:deno_postgres_interop/src/command_type.dart';
5+
import 'package:deno_postgres_interop/src/query.dart';
56

67
/// [[email protected]/QueryResult](https://deno.land/x/[email protected]/query/query.ts?s=QueryResult).
78
@JS()
8-
class QueryResult {}
9+
class QueryResult {
10+
/// [[email protected]/QueryResult/constructor](https://deno.land/x/[email protected]/query/query.ts?s=QueryResult#ctor_0).
11+
external Query get query;
12+
}
913

1014
/// [[email protected]/QueryResult](https://deno.land/x/[email protected]/query/query.ts?s=QueryResult).
1115
extension QueryResultProps on QueryResult {

lib/src/result_type.dart

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/// [[email protected]/ResultType](https://deno.land/x/[email protected]/query/query.ts?s=ResultType).
2+
enum ResultType {
3+
/// array.
4+
array,
5+
6+
/// object.
7+
object;
8+
}

0 commit comments

Comments
 (0)