Skip to content

Commit 7adbb9c

Browse files
author
Cuihtlauac ALVARADO
committed
Cleanup
1 parent f5e625b commit 7adbb9c

File tree

2 files changed

+31
-41
lines changed

2 files changed

+31
-41
lines changed

lib/bson/bson.ml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ let t : t_struct typ = Types_generated.t
1010
module Error = struct
1111
type t_struct = Types_generated.Error.t Ctypes_static.structure
1212
type t = t_struct Ctypes_static.ptr
13+
1314
let t : t_struct typ = Types_generated.Error.t
1415

1516
let domain (error : t) =
@@ -49,14 +50,14 @@ let new_from_json ?length data : (t, Error.t) result =
4950
in
5051
let json = Ctypes_std_views.char_ptr_of_string data in
5152
let json = Ctypes.coerce (ptr char) (ptr (const uint8_t)) json in
52-
let error = Ctypes.make Types_generated.Error.t in
53-
let bson = C.Functions.new_from_json json length (Ctypes.addr error) in
54-
if Ctypes.is_null bson then Result.Error (Ctypes.addr error) else Result.Ok bson
53+
let error = Ctypes.(make Types_generated.Error.t |> addr) in
54+
let bson = C.Functions.new_from_json json length error in
55+
if Ctypes.is_null bson then Error error else Ok bson
5556

5657
let as_canonical_extended_json ?length (bson : t) =
5758
let length =
5859
let some u = u |> Unsigned.Size_t.of_int |> Ctypes.allocate size_t in
59-
Option.fold ~none:(Ctypes.from_voidp size_t Ctypes.null) ~some length
60+
Option.fold ~none:Ctypes.(from_voidp size_t null) ~some length
6061
in
6162
let str = C.Functions.as_canonical_extended_json bson length in
6263
Ctypes_std_views.string_of_char_ptr str
@@ -65,11 +66,12 @@ let as_canonical_extended_json ?length (bson : t) =
6566
let as_relaxed_extended_json ?length (bson : t) =
6667
let length =
6768
let some u = u |> Unsigned.Size_t.of_int |> Ctypes.allocate size_t in
68-
Option.fold ~none:(Ctypes.from_voidp size_t Ctypes.null) ~some length
69+
Option.fold ~none:Ctypes.(from_voidp size_t null) ~some length
6970
in
7071
let str = C.Functions.as_relaxed_extended_json bson length in
7172
Ctypes_std_views.string_of_char_ptr str
7273
(* TODO: C.Functions.free (to_voidp str) *)
7374

7475
let as_json = as_relaxed_extended_json
76+
7577
let destroy (bson : t_struct ptr) = C.Functions.destroy bson |> ignore

lib/mongoc.ml

Lines changed: 24 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@ module Uri = struct
3030
type t = Types_generated.Uri.t structure ptr
3131

3232
let new_with_error uri : (t, Bson.Error.t) result =
33-
let error = Ctypes.make Bson.Error.t in
33+
let error = Ctypes.(make Bson.Error.t |> addr) in
3434
let uri = Ctypes_std_views.char_ptr_of_string uri in
35-
let uri = C.Functions.Uri.new_with_error uri (Ctypes.addr error) in
36-
if Ctypes.is_null uri then Error (Ctypes.addr error) else Ok uri
35+
let uri = C.Functions.Uri.new_with_error uri error in
36+
if Ctypes.is_null uri then Error error else Ok uri
3737

3838
let get_database t =
3939
let db = C.Functions.Uri.get_database t in
@@ -71,10 +71,8 @@ end = struct
7171
if C.Functions.Cursor.next cursor doc then Some !@doc else None
7272

7373
let error (cursor : t) =
74-
let error = Ctypes.make Bson.Error.t in
75-
if C.Functions.Cursor.error cursor (Ctypes.addr error) then
76-
Result.Error (Ctypes.addr error)
77-
else Ok ()
74+
let error = Ctypes.(make Bson.Error.t |> addr) in
75+
if C.Functions.Cursor.error cursor error then Error error else Ok ()
7876

7977
let destroy (cursor : t) = C.Functions.Cursor.destroy cursor
8078
let collection_find = Collection.find
@@ -110,28 +108,27 @@ end = struct
110108
(Int64.t, Bson.Error.t) result =
111109
let opts = Option.value ~default:Bson.none opts in
112110
let read_prefs = Option.value read_prefs ~default:Read_prefs.none in
113-
let error = Ctypes.make Bson.Error.t in
111+
let error = Ctypes.(make Bson.Error.t |> addr) in
114112
let count =
115113
C.Functions.Collection.count_documents coll filter opts read_prefs
116-
Bson.none (Ctypes.addr error)
114+
Bson.none error
117115
in
118-
if count = Int64.minus_one then Error (Ctypes.addr error) else Ok count
116+
if count = Int64.minus_one then Error error else Ok count
119117

120118
let insert_one ?(opts : Bson.t option) (coll : t) (document : Bson.t) :
121119
(Bson.t, Bson.Error.t) result =
122-
let error = Ctypes.make Bson.Error.t in
120+
let error = Ctypes.(make Bson.Error.t |> addr) in
123121
let opts = Option.value ~default:Bson.none opts in
124122
let reply = Ctypes.make Bson.t in
125123
if
126124
C.Functions.Collection.insert_one coll document opts (Ctypes.addr reply)
127-
(Ctypes.addr error)
125+
error
128126
then Ok (Ctypes.addr reply)
129-
else Error (Ctypes.addr error)
127+
else Error error
130128

131129
let drop (coll : t) =
132-
let error = Ctypes.make Bson.Error.t in
133-
if C.Functions.Collection.drop coll (Ctypes.addr error) then Ok ()
134-
else Result.Error (Ctypes.addr error)
130+
let error = Ctypes.(make Bson.Error.t |> addr) in
131+
if C.Functions.Collection.drop coll error then Ok () else Error error
135132

136133
let destroy (coll : t) = C.Functions.Collection.destroy coll
137134
let from_database (db : Database.t) name = Database.get_collection db name
@@ -152,22 +149,18 @@ end = struct
152149

153150
let get_collection_names ?(opts : Bson.t option) (db : t) :
154151
(string list, Bson.Error.t) result =
155-
let error = Ctypes.make Bson.Error.t in
152+
let error = Ctypes.(make Bson.Error.t |> addr) in
156153
let opts = Option.value ~default:Bson.none opts in
157-
let f =
158-
C.Functions.Database.get_collection_names_with_opts db opts
159-
(Ctypes.addr error)
160-
in
161-
if Ctypes.is_null f then Error (Ctypes.addr error) else Ok (string_list_of_char_ptr_ptr f)
154+
let f = C.Functions.Database.get_collection_names_with_opts db opts error in
155+
if Ctypes.is_null f then Error error else Ok (string_list_of_char_ptr_ptr f)
162156

163157
let get_collection (db : t) (name : string) : Collection.t =
164158
let name = Ctypes_std_views.char_ptr_of_string name in
165159
C.Functions.Database.get_collection db name
166160

167161
let drop (db : t) =
168-
let error = Ctypes.make Bson.Error.t in
169-
if C.Functions.Database.drop db (Ctypes.addr error) then Ok ()
170-
else Result.Error (Ctypes.addr error)
162+
let error = Ctypes.(make Bson.Error.t |> addr) in
163+
if C.Functions.Database.drop db error then Ok () else Error error
171164

172165
let destroy (db : t) = C.Functions.Database.destroy db
173166
let from_client (client : Client.t) name = Client.get_database client name
@@ -199,21 +192,16 @@ end = struct
199192
if Ctypes.is_null client then None else Some client
200193

201194
let new_from_uri_with_error (uri : Uri.t) : (t, Bson.Error.t) result =
202-
let error = Ctypes.make Bson.Error.t in
203-
let client =
204-
C.Functions.Client.new_from_uri_with_error uri (Ctypes.addr error)
205-
in
206-
if Ctypes.is_null client then Error (Ctypes.addr error) else Ok client
195+
let error = Ctypes.(make Bson.Error.t |> addr) in
196+
let client = C.Functions.Client.new_from_uri_with_error uri error in
197+
if Ctypes.is_null client then Error error else Ok client
207198

208199
let get_database_names ?(opts : Bson.t option) (client : t) :
209200
(string list, Bson.Error.t) result =
210-
let error = Ctypes.make Bson.Error.t in
201+
let error = Ctypes.(make Bson.Error.t |> addr) in
211202
let opts = Option.value ~default:Bson.none opts in
212-
let f =
213-
C.Functions.Client.get_database_names_with_opts client opts
214-
(Ctypes.addr error)
215-
in
216-
if Ctypes.is_null f then Error (Ctypes.addr error) else Ok (string_list_of_char_ptr_ptr f)
203+
let f = C.Functions.Client.get_database_names_with_opts client opts error in
204+
if Ctypes.is_null f then Error error else Ok (string_list_of_char_ptr_ptr f)
217205

218206
let get_database (client : t) db_name =
219207
let db_name = Ctypes_std_views.char_ptr_of_string db_name in

0 commit comments

Comments
 (0)