File tree Expand file tree Collapse file tree
test/ppx_deriving_qcheck/deriver Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -238,18 +238,19 @@ let gen_color =
238238type tree = Leaf of int | Node of tree * tree
239239[@@deriving qcheck]
240240
241- let gen_tree =
242- QCheck.Gen.sized @@
243- (QCheck.Gen.fix
244- (fun self -> function
245- | 0 -> QCheck.Gen.map (fun gen0 -> Leaf gen0) QCheck.Gen.int
246- | n ->
247- QCheck.Gen.frequency
248- [(1,
249- (QCheck.Gen.map (fun gen0 -> Leaf gen0) QCheck.Gen.int));
250- (1,
251- (QCheck.Gen.map (fun (gen0, gen1) -> Node (gen0, gen1))
252- (QCheck.Gen.pair (self (n / 2)) (self (n / 2)))))]))
241+ (* ==> *)
242+
243+ let rec gen_tree_sized n =
244+ match n with
245+ | 0 -> QCheck.Gen.map (fun gen0 -> Leaf gen0) QCheck.Gen.int
246+ | n ->
247+ QCheck.Gen.frequency
248+ [(1, (QCheck.Gen.map (fun gen0 -> Leaf gen0) QCheck.Gen.int));
249+ (1,
250+ (QCheck.Gen.map (fun (gen0, gen1) -> Node (gen0, gen1))
251+ (QCheck.Gen.pair (self (n / 2)) (self (n / 2)))))]))
252+
253+ let gen_tree = QCheck.Gen.sized @@ gen_tree_sized
253254```
254255
255256* Recursive polymorphic variants
You can’t perform that action at this time.
0 commit comments