-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprop_graph.stdout.txt
1132 lines (711 loc) · 229 KB
/
prop_graph.stdout.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
===> Analyzing applications...
===> Compiling poolboy
==> memento
Compiling 13 files (.ex)
Generated memento app
==> graphrenia
Compiling 5 files (.ex)
13:13:58.592 [debug] Defining type {:__aliases__, [line: 7], [:List]} with block: {:__block__, [], [{:cons, [line: 8], [{:head, [line: 8], nil}, {:recu, [line: 8], [{:tail, [line: 8], nil}]}]}, {:null, [line: 9], []}]}
13:13:58.591 [debug] Defining type {:__aliases__, [line: 4], [:Tree]} with block: {:__block__, [], [{:node, [line: 5], [{:value, [line: 5], nil}, {:recu, [line: 5], [{:left, [line: 5], nil}]}, {:recu, [line: 5], [{:right, [line: 5], nil}]}]}, {:leaf, [line: 6], []}]}
13:13:58.592 [debug] Defining type {:__aliases__, [line: 4], [:Graph]} with block: {:__block__, [], [{:graph, [line: 6], [{:vertex_map, [line: 6], nil}, {:recu, [line: 6], [{:edge_list, [line: 6], nil}]}, {:metadata, [line: 6], nil}]}, {:vertex, [line: 7], [{:vertex_id, [line: 7], nil}, {:properties, [line: 7], nil}, {:recu, [line: 7], [{:adjacency, [line: 7], nil}]}]}, {:edge, [line: 8], [{:source_id, [line: 8], nil}, {:target_id, [line: 8], nil}, {:edge_weight, [line: 8], nil}, {:edge_props, [line: 8], nil}]}, {:empty, [line: 9], []}]}
13:13:58.596 [debug] Extracted variants: [{:cons, [line: 8], [{:head, [line: 8], nil}, {:recu, [line: 8], [{:tail, [line: 8], nil}]}]}, {:null, [line: 9], []}]
13:13:58.592 [debug] Defining type {:__aliases__, [line: 7], [:Transaction]} with block: {:__block__, [], [{:pending, [line: 9], [{:operations, [line: 9], nil}, {:timestamp, [line: 9], nil}]}, {:committed, [line: 10], [{:changes, [line: 10], nil}, {:timestamp, [line: 10], nil}]}, {:rolled_back, [line: 11], [{:reason, [line: 11], nil}, {:timestamp, [line: 11], nil}]}]}
13:13:58.596 [debug] Extracted variants: [{:pending, [line: 9], [{:operations, [line: 9], nil}, {:timestamp, [line: 9], nil}]}, {:committed, [line: 10], [{:changes, [line: 10], nil}, {:timestamp, [line: 10], nil}]}, {:rolled_back, [line: 11], [{:reason, [line: 11], nil}, {:timestamp, [line: 11], nil}]}]
13:13:58.596 [debug] Generating constructors for variants: [{:cons, [line: 8], [{:head, [line: 8], nil}, {:recu, [line: 8], [{:tail, [line: 8], nil}]}]}, {:null, [line: 9], []}]
13:13:58.596 [debug] Processing variant: {:cons, [line: 8], [{:head, [line: 8], nil}, {:recu, [line: 8], [{:tail, [line: 8], nil}]}]}
13:13:58.596 [debug] Extracted variants: [{:node, [line: 5], [{:value, [line: 5], nil}, {:recu, [line: 5], [{:left, [line: 5], nil}]}, {:recu, [line: 5], [{:right, [line: 5], nil}]}]}, {:leaf, [line: 6], []}]
13:13:58.596 [debug] Constructor: :cons, meta: [line: 8], args: [{:head, [line: 8], nil}, {:recu, [line: 8], [{:tail, [line: 8], nil}]}]
13:13:58.596 [debug] Extracted variants: [{:graph, [line: 6], [{:vertex_map, [line: 6], nil}, {:recu, [line: 6], [{:edge_list, [line: 6], nil}]}, {:metadata, [line: 6], nil}]}, {:vertex, [line: 7], [{:vertex_id, [line: 7], nil}, {:properties, [line: 7], nil}, {:recu, [line: 7], [{:adjacency, [line: 7], nil}]}]}, {:edge, [line: 8], [{:source_id, [line: 8], nil}, {:target_id, [line: 8], nil}, {:edge_weight, [line: 8], nil}, {:edge_props, [line: 8], nil}]}, {:empty, [line: 9], []}]
13:13:58.596 [debug] Extracting constructor args from: [{:head, [line: 8], nil}, {:recu, [line: 8], [{:tail, [line: 8], nil}]}]
13:13:58.596 [debug] Found value arg: :head
13:13:58.596 [debug] Found recursive arg: :tail
13:13:58.596 [debug] Extracted arg_names: [:head, :tail]
13:13:58.597 [debug] Generated arg vars: [{:head, [], nil}, {:tail, [], nil}]
13:13:58.597 [debug] Generating constructors for variants: [{:node, [line: 5], [{:value, [line: 5], nil}, {:recu, [line: 5], [{:left, [line: 5], nil}]}, {:recu, [line: 5], [{:right, [line: 5], nil}]}]}, {:leaf, [line: 6], []}]
13:13:58.597 [debug] Field pairs: [head: {:head, [], nil}, tail: {:tail, [], nil}]
13:13:58.597 [debug] Processing variant: {:null, [line: 9], []}
13:13:58.597 [debug] Constructor: :null, meta: [line: 9], args: []
13:13:58.597 [debug] Processing variant: {:node, [line: 5], [{:value, [line: 5], nil}, {:recu, [line: 5], [{:left, [line: 5], nil}]}, {:recu, [line: 5], [{:right, [line: 5], nil}]}]}
13:13:58.597 [debug] Extracting constructor args from: []
13:13:58.597 [debug] Extracted arg_names: []
13:13:58.597 [debug] Generated arg vars: []
13:13:58.597 [debug] Field pairs: []
13:13:58.597 [debug] Generating constructors for variants: [{:pending, [line: 9], [{:operations, [line: 9], nil}, {:timestamp, [line: 9], nil}]}, {:committed, [line: 10], [{:changes, [line: 10], nil}, {:timestamp, [line: 10], nil}]}, {:rolled_back, [line: 11], [{:reason, [line: 11], nil}, {:timestamp, [line: 11], nil}]}]
13:13:58.597 [debug] Processing variant: {:pending, [line: 9], [{:operations, [line: 9], nil}, {:timestamp, [line: 9], nil}]}
13:13:58.597 [debug] Constructor: :pending, meta: [line: 9], args: [{:operations, [line: 9], nil}, {:timestamp, [line: 9], nil}]
13:13:58.597 [debug] Constructor: :node, meta: [line: 5], args: [{:value, [line: 5], nil}, {:recu, [line: 5], [{:left, [line: 5], nil}]}, {:recu, [line: 5], [{:right, [line: 5], nil}]}]
13:13:58.597 [debug] Generating constructors for variants: [{:graph, [line: 6], [{:vertex_map, [line: 6], nil}, {:recu, [line: 6], [{:edge_list, [line: 6], nil}]}, {:metadata, [line: 6], nil}]}, {:vertex, [line: 7], [{:vertex_id, [line: 7], nil}, {:properties, [line: 7], nil}, {:recu, [line: 7], [{:adjacency, [line: 7], nil}]}]}, {:edge, [line: 8], [{:source_id, [line: 8], nil}, {:target_id, [line: 8], nil}, {:edge_weight, [line: 8], nil}, {:edge_props, [line: 8], nil}]}, {:empty, [line: 9], []}]
13:13:58.597 [debug] Extracting constructor args from: [{:value, [line: 5], nil}, {:recu, [line: 5], [{:left, [line: 5], nil}]}, {:recu, [line: 5], [{:right, [line: 5], nil}]}]
13:13:58.597 [debug] Extracting constructor args from: [{:operations, [line: 9], nil}, {:timestamp, [line: 9], nil}]
13:13:58.597 [debug] Found value arg: :value
13:13:58.597 [debug] Found value arg: :operations
13:13:58.597 [debug] Found value arg: :timestamp
13:13:58.597 [debug] Extracted arg_names: [:operations, :timestamp]
13:13:58.597 [debug] Found recursive arg: :left
13:13:58.597 [debug] Generated arg vars: [{:operations, [], nil}, {:timestamp, [], nil}]
13:13:58.597 [debug] Found recursive arg: :right
13:13:58.597 [debug] Field pairs: [operations: {:operations, [], nil}, timestamp: {:timestamp, [], nil}]
13:13:58.597 [debug] Extracted arg_names: [:value, :left, :right]
13:13:58.597 [debug] Processing variant: {:graph, [line: 6], [{:vertex_map, [line: 6], nil}, {:recu, [line: 6], [{:edge_list, [line: 6], nil}]}, {:metadata, [line: 6], nil}]}
13:13:58.597 [debug] Constructor: :graph, meta: [line: 6], args: [{:vertex_map, [line: 6], nil}, {:recu, [line: 6], [{:edge_list, [line: 6], nil}]}, {:metadata, [line: 6], nil}]
13:13:58.597 [debug] Generated arg vars: [{:value, [], nil}, {:left, [], nil}, {:right, [], nil}]
13:13:58.597 [debug] Processing variant: {:committed, [line: 10], [{:changes, [line: 10], nil}, {:timestamp, [line: 10], nil}]}
13:13:58.597 [debug] Constructor: :committed, meta: [line: 10], args: [{:changes, [line: 10], nil}, {:timestamp, [line: 10], nil}]
13:13:58.597 [debug] Field pairs: [value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]
13:13:58.597 [debug] Extracting constructor args from: [{:changes, [line: 10], nil}, {:timestamp, [line: 10], nil}]
13:13:58.597 [debug] Processing variant: {:leaf, [line: 6], []}
13:13:58.597 [debug] Found value arg: :changes
13:13:58.597 [debug] Constructor: :leaf, meta: [line: 6], args: []
13:13:58.597 [debug] Found value arg: :timestamp
13:13:58.597 [debug] Extracting constructor args from: []
13:13:58.597 [debug] Extracted arg_names: [:changes, :timestamp]
13:13:58.597 [debug] Extracting constructor args from: [{:vertex_map, [line: 6], nil}, {:recu, [line: 6], [{:edge_list, [line: 6], nil}]}, {:metadata, [line: 6], nil}]
13:13:58.597 [debug] Extracted arg_names: []
13:13:58.597 [debug] Found value arg: :vertex_map
13:13:58.597 [debug] Generated arg vars: []
13:13:58.597 [debug] Found recursive arg: :edge_list
13:13:58.597 [debug] Found value arg: :metadata
13:13:58.597 [debug] Field pairs: []
13:13:58.597 [debug] Extracted arg_names: [:vertex_map, :edge_list, :metadata]
13:13:58.597 [debug] Generated arg vars: [{:vertex_map, [], nil}, {:edge_list, [], nil}, {:metadata, [], nil}]
13:13:58.597 [debug] Field pairs: [vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]
13:13:58.597 [debug] Generated arg vars: [{:changes, [], nil}, {:timestamp, [], nil}]
13:13:58.597 [debug] Field pairs: [changes: {:changes, [], nil}, timestamp: {:timestamp, [], nil}]
13:13:58.597 [debug] Processing variant: {:rolled_back, [line: 11], [{:reason, [line: 11], nil}, {:timestamp, [line: 11], nil}]}
13:13:58.597 [debug] Constructor: :rolled_back, meta: [line: 11], args: [{:reason, [line: 11], nil}, {:timestamp, [line: 11], nil}]
13:13:58.597 [debug] Processing variant: {:vertex, [line: 7], [{:vertex_id, [line: 7], nil}, {:properties, [line: 7], nil}, {:recu, [line: 7], [{:adjacency, [line: 7], nil}]}]}
13:13:58.597 [debug] Constructor: :vertex, meta: [line: 7], args: [{:vertex_id, [line: 7], nil}, {:properties, [line: 7], nil}, {:recu, [line: 7], [{:adjacency, [line: 7], nil}]}]
13:13:58.597 [debug] Extracting constructor args from: [{:reason, [line: 11], nil}, {:timestamp, [line: 11], nil}]
13:13:58.597 [debug] Found value arg: :reason
13:13:58.597 [debug] Found value arg: :timestamp
13:13:58.597 [debug] Extracted arg_names: [:reason, :timestamp]
13:13:58.597 [debug] Generated arg vars: [{:reason, [], nil}, {:timestamp, [], nil}]
13:13:58.597 [debug] Field pairs: [reason: {:reason, [], nil}, timestamp: {:timestamp, [], nil}]
13:13:58.597 [debug] Extracting constructor args from: [{:vertex_id, [line: 7], nil}, {:properties, [line: 7], nil}, {:recu, [line: 7], [{:adjacency, [line: 7], nil}]}]
13:13:58.597 [debug] Found value arg: :vertex_id
13:13:58.597 [debug] Found value arg: :properties
13:13:58.597 [debug] Found recursive arg: :adjacency
13:13:58.597 [debug] Extracted arg_names: [:vertex_id, :properties, :adjacency]
13:13:58.597 [debug] Generated arg vars: [{:vertex_id, [], nil}, {:properties, [], nil}, {:adjacency, [], nil}]
13:13:58.597 [debug] Field pairs: [vertex_id: {:vertex_id, [], nil}, properties: {:properties, [], nil}, adjacency: {:adjacency, [], nil}]
13:13:58.597 [debug] Processing variant: {:edge, [line: 8], [{:source_id, [line: 8], nil}, {:target_id, [line: 8], nil}, {:edge_weight, [line: 8], nil}, {:edge_props, [line: 8], nil}]}
13:13:58.597 [debug] Constructor: :edge, meta: [line: 8], args: [{:source_id, [line: 8], nil}, {:target_id, [line: 8], nil}, {:edge_weight, [line: 8], nil}, {:edge_props, [line: 8], nil}]
13:13:58.597 [debug] Extracting constructor args from: [{:source_id, [line: 8], nil}, {:target_id, [line: 8], nil}, {:edge_weight, [line: 8], nil}, {:edge_props, [line: 8], nil}]
13:13:58.597 [debug] Found value arg: :source_id
13:13:58.597 [debug] Found value arg: :target_id
13:13:58.597 [debug] Found value arg: :edge_weight
13:13:58.597 [debug] Found value arg: :edge_props
13:13:58.597 [debug] Extracted arg_names: [:source_id, :target_id, :edge_weight, :edge_props]
13:13:58.597 [debug] Generated arg vars: [{:source_id, [], nil}, {:target_id, [], nil}, {:edge_weight, [], nil}, {:edge_props, [], nil}]
13:13:58.597 [debug] Field pairs: [source_id: {:source_id, [], nil}, target_id: {:target_id, [], nil}, edge_weight: {:edge_weight, [], nil}, edge_props: {:edge_props, [], nil}]
13:13:58.597 [debug] Processing variant: {:empty, [line: 9], []}
13:13:58.597 [debug] Constructor: :empty, meta: [line: 9], args: []
13:13:58.597 [debug] Extracting constructor args from: []
13:13:58.597 [debug] Extracted arg_names: []
13:13:58.597 [debug] Generated arg vars: []
13:13:58.597 [debug] Field pairs: []
13:13:58.622 [debug] Bend operation with var: :level, initial: 0
13:13:58.622 [debug] Fork operation with expression: {:+, [line: 15], [{:level, [line: 15], nil}, 1]}
13:13:58.622 [debug] Fork operation with expression: {:+, [line: 16], [{:level, [line: 16], nil}, 1]}
13:13:58.622 [debug] Fold expression: {:tree, [line: 26], nil}, opts: [], cases: [{:->, [line: 27], [[{:case, [line: 27], [{:node, [line: 27], [{:value, [line: 27], nil}, {:left, [line: 27], nil}, {:right, [line: 27], nil}]}]}], {{:., [line: 29], [{:__aliases__, [line: 29], [:Tree]}, :node]}, [line: 29], [{{:., [line: 29], [{:transform_fn, [line: 29], nil}]}, [line: 29], [{:value, [line: 29], nil}]}, {:left, [line: 29], nil}, {:right, [line: 29], nil}]}]}, {:->, [line: 31], [[{:case, [line: 31], [{:leaf, [line: 31], []}]}], {{:., [line: 32], [{:__aliases__, [line: 32], [:Tree]}, :leaf]}, [line: 32], []}]}]
13:13:58.622 [debug] Extracting cases from list: [{:->, [line: 27], [[{:case, [line: 27], [{:node, [line: 27], [{:value, [line: 27], nil}, {:left, [line: 27], nil}, {:right, [line: 27], nil}]}]}], {{:., [line: 29], [{:__aliases__, [line: 29], [:Tree]}, :node]}, [line: 29], [{{:., [line: 29], [{:transform_fn, [line: 29], nil}]}, [line: 29], [{:value, [line: 29], nil}]}, {:left, [line: 29], nil}, {:right, [line: 29], nil}]}]}, {:->, [line: 31], [[{:case, [line: 31], [{:leaf, [line: 31], []}]}], {{:., [line: 32], [{:__aliases__, [line: 32], [:Tree]}, :leaf]}, [line: 32], []}]}]
13:13:58.622 [debug] Extracted fold cases: [{:->, [line: 27], [[{:case, [line: 27], [{:node, [line: 27], [{:value, [line: 27], nil}, {:left, [line: 27], nil}, {:right, [line: 27], nil}]}]}], {{:., [line: 29], [{:__aliases__, [line: 29], [:Tree]}, :node]}, [line: 29], [{{:., [line: 29], [{:transform_fn, [line: 29], nil}]}, [line: 29], [{:value, [line: 29], nil}]}, {:left, [line: 29], nil}, {:right, [line: 29], nil}]}]}, {:->, [line: 31], [[{:case, [line: 31], [{:leaf, [line: 31], []}]}], {{:., [line: 32], [{:__aliases__, [line: 32], [:Tree]}, :leaf]}, [line: 32], []}]}]
13:13:58.622 [debug] Generating fold cases: [{:->, [line: 27], [[{:case, [line: 27], [{:node, [line: 27], [{:value, [line: 27], nil}, {:left, [line: 27], nil}, {:right, [line: 27], nil}]}]}], {{:., [line: 29], [{:__aliases__, [line: 29], [:Tree]}, :node]}, [line: 29], [{{:., [line: 29], [{:transform_fn, [line: 29], nil}]}, [line: 29], [{:value, [line: 29], nil}]}, {:left, [line: 29], nil}, {:right, [line: 29], nil}]}]}, {:->, [line: 31], [[{:case, [line: 31], [{:leaf, [line: 31], []}]}], {{:., [line: 32], [{:__aliases__, [line: 32], [:Tree]}, :leaf]}, [line: 32], []}]}]
13:13:58.623 [debug] Generated pattern: {:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]} for variant: :node
13:13:58.623 [debug] Transforming recursive refs:
Body: {{:., [line: 29], [{:__aliases__, [line: 29], [:Tree]}, :node]}, [line: 29], [{{:., [line: 29], [{:transform_fn, [line: 29], nil}]}, [line: 29], [{:value, [line: 29], nil}]}, {:left, [line: 29], nil}, {:right, [line: 29], nil}]}
Bindings: [value: true, left: true, right: true]
State: nil
13:13:58.623 [debug] Generated pattern: {:%{}, [], [variant: :leaf]} for variant: :leaf
13:13:58.623 [debug] Transforming recursive refs:
Body: {{:., [line: 32], [{:__aliases__, [line: 32], [:Tree]}, :leaf]}, [line: 32], []}
Bindings: []
State: nil
13:13:58.623 [debug] Generated fold cases after transformation: [{:->, [line: 27], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {{:., [line: 29], [{:__aliases__, [line: 29], [:Tree]}, :node]}, [line: 29], [{{:., [line: 29], [{:transform_fn, [line: 29], nil}]}, [line: 29], [{:value, [line: 29], nil}]}, {:left, [line: 29], nil}, {:right, [line: 29], nil}]}]}, {:->, [line: 31], [[{:%{}, [], [variant: :leaf]}], {{:., [line: 32], [{:__aliases__, [line: 32], [:Tree]}, :leaf]}, [line: 32], []}]}]
13:13:58.623 [debug] Bend operation with var: :val, initial: {{:., [line: 14], [{:__aliases__, [line: 14], [:Enum]}, :reverse]}, [line: 14], [{:enum, [line: 14], nil}]}
13:13:58.623 [debug] Final quoted expression: {:do_fold, [], [{:tree, [line: 26], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 27], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {{:., [line: 29], [{:__aliases__, [line: 29], [:Tree]}, :node]}, [line: 29], [{{:., [line: 29], [{:transform_fn, [line: 29], nil}]}, [line: 29], [{:value, [line: 29], nil}]}, {:left, [line: 29], nil}, {:right, [line: 29], nil}]}]}, {:->, [line: 31], [[{:%{}, [], [variant: :leaf]}], {{:., [line: 32], [{:__aliases__, [line: 32], [:Tree]}, :leaf]}, [line: 32], []}]}]]]}]}]}]}
13:13:58.623 [debug] Fork operation with expression: {:tail, [line: 17], nil}
13:13:58.623 [debug] Fold expression: {:linked_list, [line: 24], nil}, opts: [], cases: [{:->, [line: 25], [[{:case, [line: 25], [{:cons, [line: 25], [{:head, [line: 25], nil}, {:tail, [line: 25], nil}]}]}], [{:|, [line: 26], [{:head, [line: 26], nil}, {:recu, [line: 26], [{:tail, [line: 26], nil}]}]}]]}, {:->, [line: 28], [[{:case, [line: 28], [{:null, [line: 28], []}]}], []]}]
13:13:58.623 [debug] Extracting cases from list: [{:->, [line: 25], [[{:case, [line: 25], [{:cons, [line: 25], [{:head, [line: 25], nil}, {:tail, [line: 25], nil}]}]}], [{:|, [line: 26], [{:head, [line: 26], nil}, {:recu, [line: 26], [{:tail, [line: 26], nil}]}]}]]}, {:->, [line: 28], [[{:case, [line: 28], [{:null, [line: 28], []}]}], []]}]
13:13:58.623 [debug] Extracted fold cases: [{:->, [line: 25], [[{:case, [line: 25], [{:cons, [line: 25], [{:head, [line: 25], nil}, {:tail, [line: 25], nil}]}]}], [{:|, [line: 26], [{:head, [line: 26], nil}, {:recu, [line: 26], [{:tail, [line: 26], nil}]}]}]]}, {:->, [line: 28], [[{:case, [line: 28], [{:null, [line: 28], []}]}], []]}]
13:13:58.623 [debug] Generating fold cases: [{:->, [line: 25], [[{:case, [line: 25], [{:cons, [line: 25], [{:head, [line: 25], nil}, {:tail, [line: 25], nil}]}]}], [{:|, [line: 26], [{:head, [line: 26], nil}, {:recu, [line: 26], [{:tail, [line: 26], nil}]}]}]]}, {:->, [line: 28], [[{:case, [line: 28], [{:null, [line: 28], []}]}], []]}]
13:13:58.623 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.624 [debug] Transforming recursive refs:
Body: [{:|, [line: 26], [{:head, [line: 26], nil}, {:recu, [line: 26], [{:tail, [line: 26], nil}]}]}]
Bindings: [head: true, tail: true]
State: nil
13:13:58.624 [debug] Processing recursive reference: {:recu, [line: 26], [{:tail, [line: 26], nil}]}
13:13:58.624 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.624 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.624 [debug] Transforming recursive refs:
Body: []
Bindings: []
State: nil
13:13:58.624 [debug] Generated fold cases after transformation: [{:->, [line: 25], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], [{:|, [line: 26], [{:head, [line: 26], nil}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]]}, {:->, [line: 28], [[{:%{}, [], [variant: :null]}], []]}]
13:13:58.624 [debug] Final quoted expression: {:do_fold, [], [{:linked_list, [line: 24], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 25], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], [{:|, [line: 26], [{:head, [line: 26], nil}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]]}, {:->, [line: 28], [[{:%{}, [], [variant: :null]}], []]}]]]}]}]}]}
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/parents.ex:26: Parents.map_tree/2
13:13:58.626 [debug] Fold expression: {:tree, [line: 38], nil}, opts: [], cases: [{:->, [line: 39], [[{:case, [line: 39], [{:node, [line: 39], [{:value, [line: 39], nil}, {:left, [line: 39], nil}, {:right, [line: 39], nil}]}]}], {:if, [line: 41], [{{:., [line: 41], [{:predicate, [line: 41], nil}]}, [line: 41], [{:value, [line: 41], nil}]}, [do: {{:., [line: 42], [{:__aliases__, [line: 42], [:Tree]}, :node]}, [line: 42], [{:value, [line: 42], nil}, {:left, [line: 42], nil}, {:right, [line: 42], nil}]}, else: {{:., [line: 46], [{:__aliases__, [line: 46], [:Tree]}, :node]}, [line: 46], [0, {:left, [line: 46], nil}, {:right, [line: 46], nil}]}]]}]}, {:->, [line: 49], [[{:case, [line: 49], [{:leaf, [line: 49], []}]}], {{:., [line: 50], [{:__aliases__, [line: 50], [:Tree]}, :leaf]}, [line: 50], []}]}]
13:13:58.627 [debug] Extracting cases from list: [{:->, [line: 39], [[{:case, [line: 39], [{:node, [line: 39], [{:value, [line: 39], nil}, {:left, [line: 39], nil}, {:right, [line: 39], nil}]}]}], {:if, [line: 41], [{{:., [line: 41], [{:predicate, [line: 41], nil}]}, [line: 41], [{:value, [line: 41], nil}]}, [do: {{:., [line: 42], [{:__aliases__, [line: 42], [:Tree]}, :node]}, [line: 42], [{:value, [line: 42], nil}, {:left, [line: 42], nil}, {:right, [line: 42], nil}]}, else: {{:., [line: 46], [{:__aliases__, [line: 46], [:Tree]}, :node]}, [line: 46], [0, {:left, [line: 46], nil}, {:right, [line: 46], nil}]}]]}]}, {:->, [line: 49], [[{:case, [line: 49], [{:leaf, [line: 49], []}]}], {{:., [line: 50], [{:__aliases__, [line: 50], [:Tree]}, :leaf]}, [line: 50], []}]}]
13:13:58.627 [debug] Extracted fold cases: [{:->, [line: 39], [[{:case, [line: 39], [{:node, [line: 39], [{:value, [line: 39], nil}, {:left, [line: 39], nil}, {:right, [line: 39], nil}]}]}], {:if, [line: 41], [{{:., [line: 41], [{:predicate, [line: 41], nil}]}, [line: 41], [{:value, [line: 41], nil}]}, [do: {{:., [line: 42], [{:__aliases__, [line: 42], [:Tree]}, :node]}, [line: 42], [{:value, [line: 42], nil}, {:left, [line: 42], nil}, {:right, [line: 42], nil}]}, else: {{:., [line: 46], [{:__aliases__, [line: 46], [:Tree]}, :node]}, [line: 46], [0, {:left, [line: 46], nil}, {:right, [line: 46], nil}]}]]}]}, {:->, [line: 49], [[{:case, [line: 49], [{:leaf, [line: 49], []}]}], {{:., [line: 50], [{:__aliases__, [line: 50], [:Tree]}, :leaf]}, [line: 50], []}]}]
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/chain.ex:24: Chain.breaker/1
13:13:58.627 [debug] Generating fold cases: [{:->, [line: 39], [[{:case, [line: 39], [{:node, [line: 39], [{:value, [line: 39], nil}, {:left, [line: 39], nil}, {:right, [line: 39], nil}]}]}], {:if, [line: 41], [{{:., [line: 41], [{:predicate, [line: 41], nil}]}, [line: 41], [{:value, [line: 41], nil}]}, [do: {{:., [line: 42], [{:__aliases__, [line: 42], [:Tree]}, :node]}, [line: 42], [{:value, [line: 42], nil}, {:left, [line: 42], nil}, {:right, [line: 42], nil}]}, else: {{:., [line: 46], [{:__aliases__, [line: 46], [:Tree]}, :node]}, [line: 46], [0, {:left, [line: 46], nil}, {:right, [line: 46], nil}]}]]}]}, {:->, [line: 49], [[{:case, [line: 49], [{:leaf, [line: 49], []}]}], {{:., [line: 50], [{:__aliases__, [line: 50], [:Tree]}, :leaf]}, [line: 50], []}]}]
13:13:58.627 [debug] Generated pattern: {:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]} for variant: :node
13:13:58.627 [debug] Transforming recursive refs:
Body: {:if, [line: 41], [{{:., [line: 41], [{:predicate, [line: 41], nil}]}, [line: 41], [{:value, [line: 41], nil}]}, [do: {{:., [line: 42], [{:__aliases__, [line: 42], [:Tree]}, :node]}, [line: 42], [{:value, [line: 42], nil}, {:left, [line: 42], nil}, {:right, [line: 42], nil}]}, else: {{:., [line: 46], [{:__aliases__, [line: 46], [:Tree]}, :node]}, [line: 46], [0, {:left, [line: 46], nil}, {:right, [line: 46], nil}]}]]}
Bindings: [value: true, left: true, right: true]
State: nil
13:13:58.627 [debug] Generated pattern: {:%{}, [], [variant: :leaf]} for variant: :leaf
13:13:58.627 [debug] Transforming recursive refs:
Body: {{:., [line: 50], [{:__aliases__, [line: 50], [:Tree]}, :leaf]}, [line: 50], []}
Bindings: []
State: nil
13:13:58.627 [debug] Fold expression: {:list, [line: 35], nil}, opts: [], cases: [{:->, [line: 36], [[{:case, [line: 36], [{:cons, [line: 36], [{:head, [line: 36], nil}, {:tail, [line: 36], nil}]}]}], {{:., [line: 37], [{:__aliases__, [line: 37], [:List]}, :cons]}, [line: 37], [{{:., [line: 37], [{:transform_fn, [line: 37], nil}]}, [line: 37], [{:head, [line: 37], nil}]}, {:recu, [line: 37], [{:tail, [line: 37], nil}]}]}]}, {:->, [line: 39], [[{:case, [line: 39], [{:null, [line: 39], []}]}], {{:., [line: 40], [{:__aliases__, [line: 40], [:List]}, :null]}, [line: 40], []}]}]
13:13:58.628 [debug] Generated fold cases after transformation: [{:->, [line: 39], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {:if, [line: 41], [{{:., [line: 41], [{:predicate, [line: 41], nil}]}, [line: 41], [{:value, [line: 41], nil}]}, [do: {{:., [line: 42], [{:__aliases__, [line: 42], [:Tree]}, :node]}, [line: 42], [{:value, [line: 42], nil}, {:left, [line: 42], nil}, {:right, [line: 42], nil}]}, else: {{:., [line: 46], [{:__aliases__, [line: 46], [:Tree]}, :node]}, [line: 46], [0, {:left, [line: 46], nil}, {:right, [line: 46], nil}]}]]}]}, {:->, [line: 49], [[{:%{}, [], [variant: :leaf]}], {{:., [line: 50], [{:__aliases__, [line: 50], [:Tree]}, :leaf]}, [line: 50], []}]}]
13:13:58.628 [debug] Fold expression: {:graph, [line: 25], nil}, opts: [], cases: [{:->, [line: 26], [[{:case, [line: 26], [{:graph, [line: 26], [{:vertex_map, [line: 26], nil}, {:edge_list, [line: 26], nil}, {:metadata, [line: 26], nil}]}]}], {{:., [line: 27], [{:__aliases__, [line: 27], [:Graph]}, :graph]}, [line: 27], [{{:., [line: 28], [{:__aliases__, [line: 28], [:Map]}, :put]}, [line: 28], [{:vertex_map, [line: 28], nil}, {:id, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :vertex]}, [line: 28], [{:id, [line: 28], nil}, {:props, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :empty]}, [line: 28], []}]}]}, {:edge_list, [line: 29], nil}, {:metadata, [line: 30], nil}]}]}, {:->, [line: 34], [[{:case, [line: 34], [{:empty, [line: 34], []}]}], {{:., [line: 35], [{:__aliases__, [line: 35], [:Graph]}, :graph]}, [line: 35], [{:%{}, [line: 36], [{{:id, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :vertex]}, [line: 36], [{:id, [line: 36], nil}, {:props, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :empty]}, [line: 36], []}]}}]}, {{:., [line: 37], [{:__aliases__, [line: 37], [:Graph]}, :empty]}, [line: 37], []}, {:%{}, [line: 38], [type: :directed]}]}]}]
13:13:58.628 [debug] Extracting cases from list: [{:->, [line: 36], [[{:case, [line: 36], [{:cons, [line: 36], [{:head, [line: 36], nil}, {:tail, [line: 36], nil}]}]}], {{:., [line: 37], [{:__aliases__, [line: 37], [:List]}, :cons]}, [line: 37], [{{:., [line: 37], [{:transform_fn, [line: 37], nil}]}, [line: 37], [{:head, [line: 37], nil}]}, {:recu, [line: 37], [{:tail, [line: 37], nil}]}]}]}, {:->, [line: 39], [[{:case, [line: 39], [{:null, [line: 39], []}]}], {{:., [line: 40], [{:__aliases__, [line: 40], [:List]}, :null]}, [line: 40], []}]}]
13:13:58.628 [debug] Extracting cases from list: [{:->, [line: 26], [[{:case, [line: 26], [{:graph, [line: 26], [{:vertex_map, [line: 26], nil}, {:edge_list, [line: 26], nil}, {:metadata, [line: 26], nil}]}]}], {{:., [line: 27], [{:__aliases__, [line: 27], [:Graph]}, :graph]}, [line: 27], [{{:., [line: 28], [{:__aliases__, [line: 28], [:Map]}, :put]}, [line: 28], [{:vertex_map, [line: 28], nil}, {:id, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :vertex]}, [line: 28], [{:id, [line: 28], nil}, {:props, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :empty]}, [line: 28], []}]}]}, {:edge_list, [line: 29], nil}, {:metadata, [line: 30], nil}]}]}, {:->, [line: 34], [[{:case, [line: 34], [{:empty, [line: 34], []}]}], {{:., [line: 35], [{:__aliases__, [line: 35], [:Graph]}, :graph]}, [line: 35], [{:%{}, [line: 36], [{{:id, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :vertex]}, [line: 36], [{:id, [line: 36], nil}, {:props, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :empty]}, [line: 36], []}]}}]}, {{:., [line: 37], [{:__aliases__, [line: 37], [:Graph]}, :empty]}, [line: 37], []}, {:%{}, [line: 38], [type: :directed]}]}]}]
13:13:58.628 [debug] Extracted fold cases: [{:->, [line: 36], [[{:case, [line: 36], [{:cons, [line: 36], [{:head, [line: 36], nil}, {:tail, [line: 36], nil}]}]}], {{:., [line: 37], [{:__aliases__, [line: 37], [:List]}, :cons]}, [line: 37], [{{:., [line: 37], [{:transform_fn, [line: 37], nil}]}, [line: 37], [{:head, [line: 37], nil}]}, {:recu, [line: 37], [{:tail, [line: 37], nil}]}]}]}, {:->, [line: 39], [[{:case, [line: 39], [{:null, [line: 39], []}]}], {{:., [line: 40], [{:__aliases__, [line: 40], [:List]}, :null]}, [line: 40], []}]}]
13:13:58.628 [debug] Final quoted expression: {:do_fold, [], [{:tree, [line: 38], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 39], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {:if, [line: 41], [{{:., [line: 41], [{:predicate, [line: 41], nil}]}, [line: 41], [{:value, [line: 41], nil}]}, [do: {{:., [line: 42], [{:__aliases__, [line: 42], [:Tree]}, :node]}, [line: 42], [{:value, [line: 42], nil}, {:left, [line: 42], nil}, {:right, [line: 42], nil}]}, else: {{:., [line: 46], [{:__aliases__, [line: 46], [:Tree]}, :node]}, [line: 46], [0, {:left, [line: 46], nil}, {:right, [line: 46], nil}]}]]}]}, {:->, [line: 49], [[{:%{}, [], [variant: :leaf]}], {{:., [line: 50], [{:__aliases__, [line: 50], [:Tree]}, :leaf]}, [line: 50], []}]}]]]}]}]}]}
13:13:58.628 [debug] Extracted fold cases: [{:->, [line: 26], [[{:case, [line: 26], [{:graph, [line: 26], [{:vertex_map, [line: 26], nil}, {:edge_list, [line: 26], nil}, {:metadata, [line: 26], nil}]}]}], {{:., [line: 27], [{:__aliases__, [line: 27], [:Graph]}, :graph]}, [line: 27], [{{:., [line: 28], [{:__aliases__, [line: 28], [:Map]}, :put]}, [line: 28], [{:vertex_map, [line: 28], nil}, {:id, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :vertex]}, [line: 28], [{:id, [line: 28], nil}, {:props, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :empty]}, [line: 28], []}]}]}, {:edge_list, [line: 29], nil}, {:metadata, [line: 30], nil}]}]}, {:->, [line: 34], [[{:case, [line: 34], [{:empty, [line: 34], []}]}], {{:., [line: 35], [{:__aliases__, [line: 35], [:Graph]}, :graph]}, [line: 35], [{:%{}, [line: 36], [{{:id, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :vertex]}, [line: 36], [{:id, [line: 36], nil}, {:props, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :empty]}, [line: 36], []}]}}]}, {{:., [line: 37], [{:__aliases__, [line: 37], [:Graph]}, :empty]}, [line: 37], []}, {:%{}, [line: 38], [type: :directed]}]}]}]
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/parents.ex:38: Parents.filter_tree/2
13:13:58.628 [debug] Generating fold cases: [{:->, [line: 36], [[{:case, [line: 36], [{:cons, [line: 36], [{:head, [line: 36], nil}, {:tail, [line: 36], nil}]}]}], {{:., [line: 37], [{:__aliases__, [line: 37], [:List]}, :cons]}, [line: 37], [{{:., [line: 37], [{:transform_fn, [line: 37], nil}]}, [line: 37], [{:head, [line: 37], nil}]}, {:recu, [line: 37], [{:tail, [line: 37], nil}]}]}]}, {:->, [line: 39], [[{:case, [line: 39], [{:null, [line: 39], []}]}], {{:., [line: 40], [{:__aliases__, [line: 40], [:List]}, :null]}, [line: 40], []}]}]
13:13:58.628 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.628 [debug] Transforming recursive refs:
Body: {{:., [line: 37], [{:__aliases__, [line: 37], [:List]}, :cons]}, [line: 37], [{{:., [line: 37], [{:transform_fn, [line: 37], nil}]}, [line: 37], [{:head, [line: 37], nil}]}, {:recu, [line: 37], [{:tail, [line: 37], nil}]}]}
Bindings: [head: true, tail: true]
State: nil
13:13:58.628 [debug] Processing recursive reference: {:recu, [line: 37], [{:tail, [line: 37], nil}]}
13:13:58.628 [debug] Generating fold cases: [{:->, [line: 26], [[{:case, [line: 26], [{:graph, [line: 26], [{:vertex_map, [line: 26], nil}, {:edge_list, [line: 26], nil}, {:metadata, [line: 26], nil}]}]}], {{:., [line: 27], [{:__aliases__, [line: 27], [:Graph]}, :graph]}, [line: 27], [{{:., [line: 28], [{:__aliases__, [line: 28], [:Map]}, :put]}, [line: 28], [{:vertex_map, [line: 28], nil}, {:id, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :vertex]}, [line: 28], [{:id, [line: 28], nil}, {:props, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :empty]}, [line: 28], []}]}]}, {:edge_list, [line: 29], nil}, {:metadata, [line: 30], nil}]}]}, {:->, [line: 34], [[{:case, [line: 34], [{:empty, [line: 34], []}]}], {{:., [line: 35], [{:__aliases__, [line: 35], [:Graph]}, :graph]}, [line: 35], [{:%{}, [line: 36], [{{:id, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :vertex]}, [line: 36], [{:id, [line: 36], nil}, {:props, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :empty]}, [line: 36], []}]}}]}, {{:., [line: 37], [{:__aliases__, [line: 37], [:Graph]}, :empty]}, [line: 37], []}, {:%{}, [line: 38], [type: :directed]}]}]}]
13:13:58.628 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.628 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.628 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.628 [debug] Transforming recursive refs:
Body: {{:., [line: 40], [{:__aliases__, [line: 40], [:List]}, :null]}, [line: 40], []}
Bindings: []
State: nil
13:13:58.629 [debug] Fold expression: {:tree, [line: 56], nil}, opts: [with: {:%{}, [line: 56], [{0, 1}]}], cases: [{:->, [line: 57], [[{:case, [line: 57], [{:node, [line: 57], [{:value, [line: 57], nil}, {:left, [line: 57], nil}, {:right, [line: 57], nil}]}]}], {:__block__, [], [{:=, [line: 58], [{{:_, [line: 58], nil}, {:left_counts, [line: 58], nil}}, {:recu, [line: 58], [{:left, [line: 58], nil}]}]}, {:=, [line: 59], [{{:_, [line: 59], nil}, {:right_counts, [line: 59], nil}}, {:recu, [line: 59], [{:right, [line: 59], nil}]}]}, {:=, [line: 62], [{:new_counts, [line: 62], nil}, {:|>, [line: 65], [{:|>, [line: 64], [{{:., [line: 63], [{:__aliases__, [line: 63], [:Map]}, :merge]}, [line: 63], [{:left_counts, [line: 63], nil}, {:right_counts, [line: 63], nil}, {:fn, [line: 63], [{:->, [line: 63], [[{:_k, [line: 63], nil}, {:v1, [line: 63], nil}, {:v2, [line: 63], nil}], {:+, [line: 63], [{:v1, [line: 63], nil}, {:v2, [line: 63], nil}]}]}]}]}, {{:., [line: 64], [{:__aliases__, [line: 64], [:Map]}, :new]}, [line: 64], [{:fn, [line: 64], [{:->, [line: 64], [[{{:k, [line: 64], nil}, {:v, [line: 64], nil}}], {{:+, [line: 64], [{:k, [line: 64], nil}, 1]}, {:v, [line: 64], nil}}]}]}]}]}, {{:., [line: 65], [{:__aliases__, [line: 65], [:Map]}, :put]}, [line: 65], [0, 1]}]}]}, {{:value, [line: 67], nil}, {:new_counts, [line: 67], nil}}]}]}, {:->, [line: 69], [[{:case, [line: 69], [{:leaf, [line: 69], []}]}], {0, {:state, [line: 70], nil}}]}]
13:13:58.629 [debug] Transforming recursive refs:
Body: {{:., [line: 27], [{:__aliases__, [line: 27], [:Graph]}, :graph]}, [line: 27], [{{:., [line: 28], [{:__aliases__, [line: 28], [:Map]}, :put]}, [line: 28], [{:vertex_map, [line: 28], nil}, {:id, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :vertex]}, [line: 28], [{:id, [line: 28], nil}, {:props, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :empty]}, [line: 28], []}]}]}, {:edge_list, [line: 29], nil}, {:metadata, [line: 30], nil}]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.629 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.629 [debug] Generated fold cases after transformation: [{:->, [line: 36], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {{:., [line: 37], [{:__aliases__, [line: 37], [:List]}, :cons]}, [line: 37], [{{:., [line: 37], [{:transform_fn, [line: 37], nil}]}, [line: 37], [{:head, [line: 37], nil}]}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]}, {:->, [line: 39], [[{:%{}, [], [variant: :null]}], {{:., [line: 40], [{:__aliases__, [line: 40], [:List]}, :null]}, [line: 40], []}]}]
13:13:58.629 [debug] Transforming recursive refs:
Body: {{:., [line: 35], [{:__aliases__, [line: 35], [:Graph]}, :graph]}, [line: 35], [{:%{}, [line: 36], [{{:id, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :vertex]}, [line: 36], [{:id, [line: 36], nil}, {:props, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :empty]}, [line: 36], []}]}}]}, {{:., [line: 37], [{:__aliases__, [line: 37], [:Graph]}, :empty]}, [line: 37], []}, {:%{}, [line: 38], [type: :directed]}]}
Bindings: []
State: nil
13:13:58.629 [debug] Extracting cases from list: [{:->, [line: 57], [[{:case, [line: 57], [{:node, [line: 57], [{:value, [line: 57], nil}, {:left, [line: 57], nil}, {:right, [line: 57], nil}]}]}], {:__block__, [], [{:=, [line: 58], [{{:_, [line: 58], nil}, {:left_counts, [line: 58], nil}}, {:recu, [line: 58], [{:left, [line: 58], nil}]}]}, {:=, [line: 59], [{{:_, [line: 59], nil}, {:right_counts, [line: 59], nil}}, {:recu, [line: 59], [{:right, [line: 59], nil}]}]}, {:=, [line: 62], [{:new_counts, [line: 62], nil}, {:|>, [line: 65], [{:|>, [line: 64], [{{:., [line: 63], [{:__aliases__, [line: 63], [:Map]}, :merge]}, [line: 63], [{:left_counts, [line: 63], nil}, {:right_counts, [line: 63], nil}, {:fn, [line: 63], [{:->, [line: 63], [[{:_k, [line: 63], nil}, {:v1, [line: 63], nil}, {:v2, [line: 63], nil}], {:+, [line: 63], [{:v1, [line: 63], nil}, {:v2, [line: 63], nil}]}]}]}]}, {{:., [line: 64], [{:__aliases__, [line: 64], [:Map]}, :new]}, [line: 64], [{:fn, [line: 64], [{:->, [line: 64], [[{{:k, [line: 64], nil}, {:v, [line: 64], nil}}], {{:+, [line: 64], [{:k, [line: 64], nil}, 1]}, {:v, [line: 64], nil}}]}]}]}]}, {{:., [line: 65], [{:__aliases__, [line: 65], [:Map]}, :put]}, [line: 65], [0, 1]}]}]}, {{:value, [line: 67], nil}, {:new_counts, [line: 67], nil}}]}]}, {:->, [line: 69], [[{:case, [line: 69], [{:leaf, [line: 69], []}]}], {0, {:state, [line: 70], nil}}]}]
13:13:58.629 [debug] Final quoted expression: {:do_fold, [], [{:list, [line: 35], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 36], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {{:., [line: 37], [{:__aliases__, [line: 37], [:List]}, :cons]}, [line: 37], [{{:., [line: 37], [{:transform_fn, [line: 37], nil}]}, [line: 37], [{:head, [line: 37], nil}]}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]}, {:->, [line: 39], [[{:%{}, [], [variant: :null]}], {{:., [line: 40], [{:__aliases__, [line: 40], [:List]}, :null]}, [line: 40], []}]}]]]}]}]}]}
13:13:58.629 [debug] Generated fold cases after transformation: [{:->, [line: 26], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {{:., [line: 27], [{:__aliases__, [line: 27], [:Graph]}, :graph]}, [line: 27], [{{:., [line: 28], [{:__aliases__, [line: 28], [:Map]}, :put]}, [line: 28], [{:vertex_map, [line: 28], nil}, {:id, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :vertex]}, [line: 28], [{:id, [line: 28], nil}, {:props, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :empty]}, [line: 28], []}]}]}, {:edge_list, [line: 29], nil}, {:metadata, [line: 30], nil}]}]}, {:->, [line: 34], [[{:%{}, [], [variant: :empty]}], {{:., [line: 35], [{:__aliases__, [line: 35], [:Graph]}, :graph]}, [line: 35], [{:%{}, [line: 36], [{{:id, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :vertex]}, [line: 36], [{:id, [line: 36], nil}, {:props, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :empty]}, [line: 36], []}]}}]}, {{:., [line: 37], [{:__aliases__, [line: 37], [:Graph]}, :empty]}, [line: 37], []}, {:%{}, [line: 38], [type: :directed]}]}]}]
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/chain.ex:35: Chain.map/2
13:13:58.629 [debug] Extracted fold cases: [{:->, [line: 57], [[{:case, [line: 57], [{:node, [line: 57], [{:value, [line: 57], nil}, {:left, [line: 57], nil}, {:right, [line: 57], nil}]}]}], {:__block__, [], [{:=, [line: 58], [{{:_, [line: 58], nil}, {:left_counts, [line: 58], nil}}, {:recu, [line: 58], [{:left, [line: 58], nil}]}]}, {:=, [line: 59], [{{:_, [line: 59], nil}, {:right_counts, [line: 59], nil}}, {:recu, [line: 59], [{:right, [line: 59], nil}]}]}, {:=, [line: 62], [{:new_counts, [line: 62], nil}, {:|>, [line: 65], [{:|>, [line: 64], [{{:., [line: 63], [{:__aliases__, [line: 63], [:Map]}, :merge]}, [line: 63], [{:left_counts, [line: 63], nil}, {:right_counts, [line: 63], nil}, {:fn, [line: 63], [{:->, [line: 63], [[{:_k, [line: 63], nil}, {:v1, [line: 63], nil}, {:v2, [line: 63], nil}], {:+, [line: 63], [{:v1, [line: 63], nil}, {:v2, [line: 63], nil}]}]}]}]}, {{:., [line: 64], [{:__aliases__, [line: 64], [:Map]}, :new]}, [line: 64], [{:fn, [line: 64], [{:->, [line: 64], [[{{:k, [line: 64], nil}, {:v, [line: 64], nil}}], {{:+, [line: 64], [{:k, [line: 64], nil}, 1]}, {:v, [line: 64], nil}}]}]}]}]}, {{:., [line: 65], [{:__aliases__, [line: 65], [:Map]}, :put]}, [line: 65], [0, 1]}]}]}, {{:value, [line: 67], nil}, {:new_counts, [line: 67], nil}}]}]}, {:->, [line: 69], [[{:case, [line: 69], [{:leaf, [line: 69], []}]}], {0, {:state, [line: 70], nil}}]}]
13:13:58.629 [debug] Final quoted expression: {:do_fold, [], [{:graph, [line: 25], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 26], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {{:., [line: 27], [{:__aliases__, [line: 27], [:Graph]}, :graph]}, [line: 27], [{{:., [line: 28], [{:__aliases__, [line: 28], [:Map]}, :put]}, [line: 28], [{:vertex_map, [line: 28], nil}, {:id, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [line: 28], [:Graph]}, :vertex]}, [line: 28], [{:id, [line: 28], nil}, {:props, [line: 28], nil}, {{:., [line: 28], [{:__aliases__, [...], ...}, :empty]}, [line: 28], []}]}]}, {:edge_list, [line: 29], nil}, {:metadata, [line: 30], nil}]}]}, {:->, [line: 34], [[{:%{}, [], [variant: :empty]}], {{:., [line: 35], [{:__aliases__, [line: 35], [:Graph]}, :graph]}, [line: 35], [{:%{}, [line: 36], [{{:id, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, [line: 36], [:Graph]}, :vertex]}, [line: 36], [{:id, [line: 36], nil}, {:props, [line: 36], nil}, {{:., [line: 36], [{:__aliases__, ...}, :empty]}, [line: 36], []}]}}]}, {{:., [line: 37], [{:__aliases__, [line: 37], [:Graph]}, :empty]}, [line: 37], []}, {:%{}, [line: 38], [type: :directed]}]}]}]]]}]}]}]}
13:13:58.630 [debug] Fold expression: {:list, [line: 46], nil}, opts: [], cases: [{:->, [line: 47], [[{:case, [line: 47], [{:cons, [line: 47], [{:head, [line: 47], nil}, {:tail, [line: 47], nil}]}]}], {:if, [line: 48], [{{:., [line: 48], [{:predicate, [line: 48], nil}]}, [line: 48], [{:head, [line: 48], nil}]}, [do: {{:., [line: 49], [{:__aliases__, [line: 49], [:List]}, :cons]}, [line: 49], [{:head, [line: 49], nil}, {:recu, [line: 49], [{:tail, [line: 49], nil}]}]}, else: {:recu, [line: 51], [{:tail, [line: 51], nil}]}]]}]}, {:->, [line: 54], [[{:case, [line: 54], [{:null, [line: 54], []}]}], {{:., [line: 55], [{:__aliases__, [line: 55], [:List]}, :null]}, [line: 55], []}]}]
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:25: PropGraph.add_vertex/3
13:13:58.630 [debug] Generating fold cases: [{:->, [line: 57], [[{:case, [line: 57], [{:node, [line: 57], [{:value, [line: 57], nil}, {:left, [line: 57], nil}, {:right, [line: 57], nil}]}]}], {:__block__, [], [{:=, [line: 58], [{{:_, [line: 58], nil}, {:left_counts, [line: 58], nil}}, {:recu, [line: 58], [{:left, [line: 58], nil}]}]}, {:=, [line: 59], [{{:_, [line: 59], nil}, {:right_counts, [line: 59], nil}}, {:recu, [line: 59], [{:right, [line: 59], nil}]}]}, {:=, [line: 62], [{:new_counts, [line: 62], nil}, {:|>, [line: 65], [{:|>, [line: 64], [{{:., [line: 63], [{:__aliases__, [line: 63], [:Map]}, :merge]}, [line: 63], [{:left_counts, [line: 63], nil}, {:right_counts, [line: 63], nil}, {:fn, [line: 63], [{:->, [line: 63], [[{:_k, [line: 63], nil}, {:v1, [line: 63], nil}, {:v2, [line: 63], nil}], {:+, [line: 63], [{:v1, [line: 63], nil}, {:v2, [line: 63], nil}]}]}]}]}, {{:., [line: 64], [{:__aliases__, [line: 64], [:Map]}, :new]}, [line: 64], [{:fn, [line: 64], [{:->, [line: 64], [[{{:k, [line: 64], nil}, {:v, [line: 64], nil}}], {{:+, [line: 64], [{:k, [line: 64], nil}, 1]}, {:v, [line: 64], nil}}]}]}]}]}, {{:., [line: 65], [{:__aliases__, [line: 65], [:Map]}, :put]}, [line: 65], [0, 1]}]}]}, {{:value, [line: 67], nil}, {:new_counts, [line: 67], nil}}]}]}, {:->, [line: 69], [[{:case, [line: 69], [{:leaf, [line: 69], []}]}], {0, {:state, [line: 70], nil}}]}]
13:13:58.630 [debug] Generated pattern: {:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]} for variant: :node
13:13:58.630 [debug] Extracting cases from list: [{:->, [line: 47], [[{:case, [line: 47], [{:cons, [line: 47], [{:head, [line: 47], nil}, {:tail, [line: 47], nil}]}]}], {:if, [line: 48], [{{:., [line: 48], [{:predicate, [line: 48], nil}]}, [line: 48], [{:head, [line: 48], nil}]}, [do: {{:., [line: 49], [{:__aliases__, [line: 49], [:List]}, :cons]}, [line: 49], [{:head, [line: 49], nil}, {:recu, [line: 49], [{:tail, [line: 49], nil}]}]}, else: {:recu, [line: 51], [{:tail, [line: 51], nil}]}]]}]}, {:->, [line: 54], [[{:case, [line: 54], [{:null, [line: 54], []}]}], {{:., [line: 55], [{:__aliases__, [line: 55], [:List]}, :null]}, [line: 55], []}]}]
13:13:58.630 [debug] Extracted fold cases: [{:->, [line: 47], [[{:case, [line: 47], [{:cons, [line: 47], [{:head, [line: 47], nil}, {:tail, [line: 47], nil}]}]}], {:if, [line: 48], [{{:., [line: 48], [{:predicate, [line: 48], nil}]}, [line: 48], [{:head, [line: 48], nil}]}, [do: {{:., [line: 49], [{:__aliases__, [line: 49], [:List]}, :cons]}, [line: 49], [{:head, [line: 49], nil}, {:recu, [line: 49], [{:tail, [line: 49], nil}]}]}, else: {:recu, [line: 51], [{:tail, [line: 51], nil}]}]]}]}, {:->, [line: 54], [[{:case, [line: 54], [{:null, [line: 54], []}]}], {{:., [line: 55], [{:__aliases__, [line: 55], [:List]}, :null]}, [line: 55], []}]}]
13:13:58.630 [debug] Generating fold cases: [{:->, [line: 47], [[{:case, [line: 47], [{:cons, [line: 47], [{:head, [line: 47], nil}, {:tail, [line: 47], nil}]}]}], {:if, [line: 48], [{{:., [line: 48], [{:predicate, [line: 48], nil}]}, [line: 48], [{:head, [line: 48], nil}]}, [do: {{:., [line: 49], [{:__aliases__, [line: 49], [:List]}, :cons]}, [line: 49], [{:head, [line: 49], nil}, {:recu, [line: 49], [{:tail, [line: 49], nil}]}]}, else: {:recu, [line: 51], [{:tail, [line: 51], nil}]}]]}]}, {:->, [line: 54], [[{:case, [line: 54], [{:null, [line: 54], []}]}], {{:., [line: 55], [{:__aliases__, [line: 55], [:List]}, :null]}, [line: 55], []}]}]
13:13:58.630 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.630 [debug] Transforming recursive refs:
Body: {:__block__, [], [{:=, [line: 58], [{{:_, [line: 58], nil}, {:left_counts, [line: 58], nil}}, {:recu, [line: 58], [{:left, [line: 58], nil}]}]}, {:=, [line: 59], [{{:_, [line: 59], nil}, {:right_counts, [line: 59], nil}}, {:recu, [line: 59], [{:right, [line: 59], nil}]}]}, {:=, [line: 62], [{:new_counts, [line: 62], nil}, {:|>, [line: 65], [{:|>, [line: 64], [{{:., [line: 63], [{:__aliases__, [line: 63], [:Map]}, :merge]}, [line: 63], [{:left_counts, [line: 63], nil}, {:right_counts, [line: 63], nil}, {:fn, [line: 63], [{:->, [line: 63], [[{:_k, [line: 63], nil}, {:v1, [line: 63], nil}, {:v2, [line: 63], nil}], {:+, [line: 63], [{:v1, [line: 63], nil}, {:v2, [line: 63], nil}]}]}]}]}, {{:., [line: 64], [{:__aliases__, [line: 64], [:Map]}, :new]}, [line: 64], [{:fn, [line: 64], [{:->, [line: 64], [[{{:k, [line: 64], nil}, {:v, [line: 64], nil}}], {{:+, [line: 64], [{:k, [line: 64], nil}, 1]}, {:v, [line: 64], nil}}]}]}]}]}, {{:., [line: 65], [{:__aliases__, [line: 65], [:Map]}, :put]}, [line: 65], [0, 1]}]}]}, {{:value, [line: 67], nil}, {:new_counts, [line: 67], nil}}]}
Bindings: [value: true, left: true, right: true]
State: {:%{}, [line: 56], [{0, 1}]}
13:13:58.630 [debug] Processing recursive reference: {:recu, [line: 58], [{:left, [line: 58], nil}]}
13:13:58.630 [debug] Transforming recursive refs:
Body: {:if, [line: 48], [{{:., [line: 48], [{:predicate, [line: 48], nil}]}, [line: 48], [{:head, [line: 48], nil}]}, [do: {{:., [line: 49], [{:__aliases__, [line: 49], [:List]}, :cons]}, [line: 49], [{:head, [line: 49], nil}, {:recu, [line: 49], [{:tail, [line: 49], nil}]}]}, else: {:recu, [line: 51], [{:tail, [line: 51], nil}]}]]}
Bindings: [head: true, tail: true]
State: nil
13:13:58.630 [debug] Processing recursive reference: {:recu, [line: 49], [{:tail, [line: 49], nil}]}
13:13:58.630 [debug] Transformed recursive reference to: {:do_fold, [], [{:left, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.630 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.630 [debug] Fold expression: {:graph, [line: 46], nil}, opts: [], cases: [{:->, [line: 47], [[{:case, [line: 47], [{:graph, [line: 47], [{:vertex_map, [line: 47], nil}, {:edge_list, [line: 47], nil}, {:metadata, [line: 47], nil}]}]}], {:__block__, [], [{:=, [line: 48], [{:all_edges, [line: 48], nil}, {:if, [line: 49], [{:==, [line: 49], [{{:., [line: 49], [{:metadata, [line: 49], nil}, :type]}, [no_parens: true, line: 49], []}, :undirected]}, [do: {:__block__, [], [{:=, [line: 50], [{:reverse_edge, [line: 50], nil}, {{:., [line: 50], [{:__aliases__, [line: 50], [:Graph]}, :edge]}, [line: 50], [{:to_id, [line: 50], nil}, {:from_id, [line: 50], nil}, {:weight, [line: 50], nil}, {:props, [line: 50], nil}]}]}, [{:new_edge, [line: 51], nil}, {:reverse_edge, [line: 51], nil}]]}, else: [{:new_edge, [line: 53], nil}]]]}]}, {:=, [line: 57], [{:new_edge_list, [line: 57], nil}, {:case, [line: 58], [{:edge_list, [line: 58], nil}, [do: [{:->, [line: 59], [[{:%{}, [line: 59], [variant: :empty]}], {:hd, [line: 59], [{:all_edges, [line: 59], nil}]}]}, {:->, [line: 60], [[{:_, [line: 60], nil}], {:++, [line: 60], [{:all_edges, [line: 60], nil}, {{:., [line: 60], [{:__aliases__, [line: 60], [:List]}, :wrap]}, [line: 60], [{:edge_list, [line: 60], nil}]}]}]}]]]}]}, {{:., [line: 63], [{:__aliases__, [line: 63], [:Graph]}, :graph]}, [line: 63], [{:vertex_map, [line: 63], nil}, {:new_edge_list, [line: 63], nil}, {:metadata, [line: 63], nil}]}]}]}, {:->, [line: 65], [[{:case, [line: 65], [{:empty, [line: 65], []}]}], {{:., [line: 66], [{:__aliases__, [line: 66], [:Graph]}, :graph]}, [line: 66], [{:%{}, [line: 66], []}, {:new_edge, [line: 66], nil}, {:%{}, [line: 66], [type: :directed]}]}]}]
13:13:58.630 [debug] Processing recursive reference: {:recu, [line: 59], [{:right, [line: 59], nil}]}
13:13:58.630 [debug] Processing recursive reference: {:recu, [line: 51], [{:tail, [line: 51], nil}]}
13:13:58.630 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.630 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.630 [debug] Transformed recursive reference to: {:do_fold, [], [{:right, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.630 [debug] Transforming recursive refs:
Body: {{:., [line: 55], [{:__aliases__, [line: 55], [:List]}, :null]}, [line: 55], []}
Bindings: []
State: nil
13:13:58.630 [debug] Generated pattern: {:%{}, [], [variant: :leaf]} for variant: :leaf
13:13:58.630 [debug] Transforming recursive refs:
Body: {0, {:state, [line: 70], nil}}
Bindings: []
State: {:%{}, [line: 56], [{0, 1}]}
13:13:58.631 [debug] Generated fold cases after transformation: [{:->, [line: 47], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:if, [line: 48], [{{:., [line: 48], [{:predicate, [line: 48], nil}]}, [line: 48], [{:head, [line: 48], nil}]}, [do: {{:., [line: 49], [{:__aliases__, [line: 49], [:List]}, :cons]}, [line: 49], [{:head, [line: 49], nil}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, else: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]]}]}, {:->, [line: 54], [[{:%{}, [], [variant: :null]}], {{:., [line: 55], [{:__aliases__, [line: 55], [:List]}, :null]}, [line: 55], []}]}]
13:13:58.631 [debug] Extracting cases from list: [{:->, [line: 47], [[{:case, [line: 47], [{:graph, [line: 47], [{:vertex_map, [line: 47], nil}, {:edge_list, [line: 47], nil}, {:metadata, [line: 47], nil}]}]}], {:__block__, [], [{:=, [line: 48], [{:all_edges, [line: 48], nil}, {:if, [line: 49], [{:==, [line: 49], [{{:., [line: 49], [{:metadata, [line: 49], nil}, :type]}, [no_parens: true, line: 49], []}, :undirected]}, [do: {:__block__, [], [{:=, [line: 50], [{:reverse_edge, [line: 50], nil}, {{:., [line: 50], [{:__aliases__, [line: 50], [:Graph]}, :edge]}, [line: 50], [{:to_id, [line: 50], nil}, {:from_id, [line: 50], nil}, {:weight, [line: 50], nil}, {:props, [line: 50], nil}]}]}, [{:new_edge, [line: 51], nil}, {:reverse_edge, [line: 51], nil}]]}, else: [{:new_edge, [line: 53], nil}]]]}]}, {:=, [line: 57], [{:new_edge_list, [line: 57], nil}, {:case, [line: 58], [{:edge_list, [line: 58], nil}, [do: [{:->, [line: 59], [[{:%{}, [line: 59], [variant: :empty]}], {:hd, [line: 59], [{:all_edges, [line: 59], nil}]}]}, {:->, [line: 60], [[{:_, [line: 60], nil}], {:++, [line: 60], [{:all_edges, [line: 60], nil}, {{:., [line: 60], [{:__aliases__, [line: 60], [:List]}, :wrap]}, [line: 60], [{:edge_list, [line: 60], nil}]}]}]}]]]}]}, {{:., [line: 63], [{:__aliases__, [line: 63], [:Graph]}, :graph]}, [line: 63], [{:vertex_map, [line: 63], nil}, {:new_edge_list, [line: 63], nil}, {:metadata, [line: 63], nil}]}]}]}, {:->, [line: 65], [[{:case, [line: 65], [{:empty, [line: 65], []}]}], {{:., [line: 66], [{:__aliases__, [line: 66], [:Graph]}, :graph]}, [line: 66], [{:%{}, [line: 66], []}, {:new_edge, [line: 66], nil}, {:%{}, [line: 66], [type: :directed]}]}]}]
13:13:58.631 [debug] Final quoted expression: {:do_fold, [], [{:list, [line: 46], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 47], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:if, [line: 48], [{{:., [line: 48], [{:predicate, [line: 48], nil}]}, [line: 48], [{:head, [line: 48], nil}]}, [do: {{:., [line: 49], [{:__aliases__, [line: 49], [:List]}, :cons]}, [line: 49], [{:head, [line: 49], nil}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, ...}, {...}]], [{:value, [], ...}]}]}]}, else: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]]}]}, {:->, [line: 54], [[{:%{}, [], [variant: :null]}], {{:., [line: 55], [{:__aliases__, [line: 55], [:List]}, :null]}, [line: 55], []}]}]]]}]}]}]}
13:13:58.631 [debug] Generated fold cases after transformation: [{:->, [line: 57], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {:__block__, [], [{:=, [line: 58], [{{:_, [line: 58], nil}, {:left_counts, [line: 58], nil}}, {:do_fold, [], [{:left, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 59], [{{:_, [line: 59], nil}, {:right_counts, [line: 59], nil}}, {:do_fold, [], [{:right, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 62], [{:new_counts, [line: 62], nil}, {:|>, [line: 65], [{:|>, [line: 64], [{{:., [line: 63], [{:__aliases__, [line: 63], [:Map]}, :merge]}, [line: 63], [{:left_counts, [line: 63], nil}, {:right_counts, [line: 63], nil}, {:fn, [line: 63], [{:->, [line: 63], [[{:_k, [line: 63], nil}, {:v1, [line: 63], nil}, {:v2, [line: 63], nil}], {:+, [line: 63], [{:v1, [line: 63], nil}, {:v2, [line: 63], nil}]}]}]}]}, {{:., [line: 64], [{:__aliases__, [line: 64], [:Map]}, :new]}, [line: 64], [{:fn, [line: 64], [{:->, [line: 64], [[{{:k, [line: 64], nil}, {:v, [line: 64], nil}}], {{:+, [line: 64], [{:k, [line: 64], nil}, 1]}, {:v, [line: 64], nil}}]}]}]}]}, {{:., [line: 65], [{:__aliases__, [line: 65], [:Map]}, :put]}, [line: 65], [0, 1]}]}]}, {{:value, [line: 67], nil}, {:new_counts, [line: 67], nil}}]}]}, {:->, [line: 69], [[{:%{}, [], [variant: :leaf]}], {0, {:state, [line: 70], nil}}]}]
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/chain.ex:46: Chain.filter/2
13:13:58.631 [debug] Extracted fold cases: [{:->, [line: 47], [[{:case, [line: 47], [{:graph, [line: 47], [{:vertex_map, [line: 47], nil}, {:edge_list, [line: 47], nil}, {:metadata, [line: 47], nil}]}]}], {:__block__, [], [{:=, [line: 48], [{:all_edges, [line: 48], nil}, {:if, [line: 49], [{:==, [line: 49], [{{:., [line: 49], [{:metadata, [line: 49], nil}, :type]}, [no_parens: true, line: 49], []}, :undirected]}, [do: {:__block__, [], [{:=, [line: 50], [{:reverse_edge, [line: 50], nil}, {{:., [line: 50], [{:__aliases__, [line: 50], [:Graph]}, :edge]}, [line: 50], [{:to_id, [line: 50], nil}, {:from_id, [line: 50], nil}, {:weight, [line: 50], nil}, {:props, [line: 50], nil}]}]}, [{:new_edge, [line: 51], nil}, {:reverse_edge, [line: 51], nil}]]}, else: [{:new_edge, [line: 53], nil}]]]}]}, {:=, [line: 57], [{:new_edge_list, [line: 57], nil}, {:case, [line: 58], [{:edge_list, [line: 58], nil}, [do: [{:->, [line: 59], [[{:%{}, [line: 59], [variant: :empty]}], {:hd, [line: 59], [{:all_edges, [line: 59], nil}]}]}, {:->, [line: 60], [[{:_, [line: 60], nil}], {:++, [line: 60], [{:all_edges, [line: 60], nil}, {{:., [line: 60], [{:__aliases__, [line: 60], [:List]}, :wrap]}, [line: 60], [{:edge_list, [line: 60], nil}]}]}]}]]]}]}, {{:., [line: 63], [{:__aliases__, [line: 63], [:Graph]}, :graph]}, [line: 63], [{:vertex_map, [line: 63], nil}, {:new_edge_list, [line: 63], nil}, {:metadata, [line: 63], nil}]}]}]}, {:->, [line: 65], [[{:case, [line: 65], [{:empty, [line: 65], []}]}], {{:., [line: 66], [{:__aliases__, [line: 66], [:Graph]}, :graph]}, [line: 66], [{:%{}, [line: 66], []}, {:new_edge, [line: 66], nil}, {:%{}, [line: 66], [type: :directed]}]}]}]
13:13:58.631 [debug] Final quoted expression: {:do_fold, [], [{:tree, [line: 56], nil}, {:%{}, [line: 56], [{0, 1}]}, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 57], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {:__block__, [], [{:=, [line: 58], [{{:_, [line: 58], nil}, {:left_counts, [line: 58], nil}}, {:do_fold, [], [{:left, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 59], [{{:_, [line: 59], nil}, {:right_counts, [line: 59], nil}}, {:do_fold, [], [{:right, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, ...}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 62], [{:new_counts, [line: 62], nil}, {:|>, [line: 65], [{:|>, [line: 64], [{{:., [line: 63], [...]}, [line: 63], [{...}, ...]}, {{:., [...], ...}, [line: 64], [...]}]}, {{:., [line: 65], [{:__aliases__, [...], ...}, :put]}, [line: 65], [0, 1]}]}]}, {{:value, [line: 67], nil}, {:new_counts, [line: 67], nil}}]}]}, {:->, [line: 69], [[{:%{}, [], [variant: :leaf]}], {0, {:state, [line: 70], nil}}]}]]]}]}]}]}
13:13:58.631 [debug] Fold expression: {:list, [line: 61], nil}, opts: [with: {:initial, [line: 61], nil}], cases: [{:->, [line: 62], [[{:case, [line: 62], [{:cons, [line: 62], [{:head, [line: 62], nil}, {:tail, [line: 62], nil}]}]}], {:__block__, [], [{:=, [line: 63], [{{:tail_result, [line: 63], nil}, {:new_acc, [line: 63], nil}}, {:recu, [line: 63], [{:tail, [line: 63], nil}]}]}, {:=, [line: 64], [{:result, [line: 64], nil}, {{:., [line: 64], [{:reducer_fn, [line: 64], nil}]}, [line: 64], [{:head, [line: 64], nil}, {:new_acc, [line: 64], nil}]}]}, {{:result, [line: 65], nil}, {:result, [line: 65], nil}}]}]}, {:->, [line: 67], [[{:case, [line: 67], [{:null, [line: 67], []}]}], {{:state, [line: 68], nil}, {:state, [line: 68], nil}}]}]
13:13:58.632 [debug] Extracting cases from list: [{:->, [line: 62], [[{:case, [line: 62], [{:cons, [line: 62], [{:head, [line: 62], nil}, {:tail, [line: 62], nil}]}]}], {:__block__, [], [{:=, [line: 63], [{{:tail_result, [line: 63], nil}, {:new_acc, [line: 63], nil}}, {:recu, [line: 63], [{:tail, [line: 63], nil}]}]}, {:=, [line: 64], [{:result, [line: 64], nil}, {{:., [line: 64], [{:reducer_fn, [line: 64], nil}]}, [line: 64], [{:head, [line: 64], nil}, {:new_acc, [line: 64], nil}]}]}, {{:result, [line: 65], nil}, {:result, [line: 65], nil}}]}]}, {:->, [line: 67], [[{:case, [line: 67], [{:null, [line: 67], []}]}], {{:state, [line: 68], nil}, {:state, [line: 68], nil}}]}]
13:13:58.632 [debug] Generating fold cases: [{:->, [line: 47], [[{:case, [line: 47], [{:graph, [line: 47], [{:vertex_map, [line: 47], nil}, {:edge_list, [line: 47], nil}, {:metadata, [line: 47], nil}]}]}], {:__block__, [], [{:=, [line: 48], [{:all_edges, [line: 48], nil}, {:if, [line: 49], [{:==, [line: 49], [{{:., [line: 49], [{:metadata, [line: 49], nil}, :type]}, [no_parens: true, line: 49], []}, :undirected]}, [do: {:__block__, [], [{:=, [line: 50], [{:reverse_edge, [line: 50], nil}, {{:., [line: 50], [{:__aliases__, [line: 50], [:Graph]}, :edge]}, [line: 50], [{:to_id, [line: 50], nil}, {:from_id, [line: 50], nil}, {:weight, [line: 50], nil}, {:props, [line: 50], nil}]}]}, [{:new_edge, [line: 51], nil}, {:reverse_edge, [line: 51], nil}]]}, else: [{:new_edge, [line: 53], nil}]]]}]}, {:=, [line: 57], [{:new_edge_list, [line: 57], nil}, {:case, [line: 58], [{:edge_list, [line: 58], nil}, [do: [{:->, [line: 59], [[{:%{}, [line: 59], [variant: :empty]}], {:hd, [line: 59], [{:all_edges, [line: 59], nil}]}]}, {:->, [line: 60], [[{:_, [line: 60], nil}], {:++, [line: 60], [{:all_edges, [line: 60], nil}, {{:., [line: 60], [{:__aliases__, [line: 60], [:List]}, :wrap]}, [line: 60], [{:edge_list, [line: 60], nil}]}]}]}]]]}]}, {{:., [line: 63], [{:__aliases__, [line: 63], [:Graph]}, :graph]}, [line: 63], [{:vertex_map, [line: 63], nil}, {:new_edge_list, [line: 63], nil}, {:metadata, [line: 63], nil}]}]}]}, {:->, [line: 65], [[{:case, [line: 65], [{:empty, [line: 65], []}]}], {{:., [line: 66], [{:__aliases__, [line: 66], [:Graph]}, :graph]}, [line: 66], [{:%{}, [line: 66], []}, {:new_edge, [line: 66], nil}, {:%{}, [line: 66], [type: :directed]}]}]}]
13:13:58.632 [debug] Extracted fold cases: [{:->, [line: 62], [[{:case, [line: 62], [{:cons, [line: 62], [{:head, [line: 62], nil}, {:tail, [line: 62], nil}]}]}], {:__block__, [], [{:=, [line: 63], [{{:tail_result, [line: 63], nil}, {:new_acc, [line: 63], nil}}, {:recu, [line: 63], [{:tail, [line: 63], nil}]}]}, {:=, [line: 64], [{:result, [line: 64], nil}, {{:., [line: 64], [{:reducer_fn, [line: 64], nil}]}, [line: 64], [{:head, [line: 64], nil}, {:new_acc, [line: 64], nil}]}]}, {{:result, [line: 65], nil}, {:result, [line: 65], nil}}]}]}, {:->, [line: 67], [[{:case, [line: 67], [{:null, [line: 67], []}]}], {{:state, [line: 68], nil}, {:state, [line: 68], nil}}]}]
13:13:58.632 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.632 [debug] Generating fold cases: [{:->, [line: 62], [[{:case, [line: 62], [{:cons, [line: 62], [{:head, [line: 62], nil}, {:tail, [line: 62], nil}]}]}], {:__block__, [], [{:=, [line: 63], [{{:tail_result, [line: 63], nil}, {:new_acc, [line: 63], nil}}, {:recu, [line: 63], [{:tail, [line: 63], nil}]}]}, {:=, [line: 64], [{:result, [line: 64], nil}, {{:., [line: 64], [{:reducer_fn, [line: 64], nil}]}, [line: 64], [{:head, [line: 64], nil}, {:new_acc, [line: 64], nil}]}]}, {{:result, [line: 65], nil}, {:result, [line: 65], nil}}]}]}, {:->, [line: 67], [[{:case, [line: 67], [{:null, [line: 67], []}]}], {{:state, [line: 68], nil}, {:state, [line: 68], nil}}]}]
13:13:58.632 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.632 [debug] Transforming recursive refs:
Body: {:__block__, [], [{:=, [line: 63], [{{:tail_result, [line: 63], nil}, {:new_acc, [line: 63], nil}}, {:recu, [line: 63], [{:tail, [line: 63], nil}]}]}, {:=, [line: 64], [{:result, [line: 64], nil}, {{:., [line: 64], [{:reducer_fn, [line: 64], nil}]}, [line: 64], [{:head, [line: 64], nil}, {:new_acc, [line: 64], nil}]}]}, {{:result, [line: 65], nil}, {:result, [line: 65], nil}}]}
Bindings: [head: true, tail: true]
State: {:initial, [line: 61], nil}
13:13:58.632 [debug] Processing recursive reference: {:recu, [line: 63], [{:tail, [line: 63], nil}]}
13:13:58.632 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.632 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.632 [debug] Fold expression: {:tree, [line: 128], nil}, opts: [], cases: [{:->, [line: 129], [[{:case, [line: 129], [{:node, [line: 129], [{:value, [line: 129], nil}, {:left, [line: 129], nil}, {:right, [line: 129], nil}]}]}], {:__block__, [], [{:=, [line: 130], [{:left_values, [line: 130], nil}, {:recu, [line: 130], [{:left, [line: 130], nil}]}]}, {:=, [line: 131], [{:right_values, [line: 131], nil}, {:recu, [line: 131], [{:right, [line: 131], nil}]}]}, {:++, [line: 132], [{:left_values, [line: 132], nil}, {:++, [line: 132], [[{:value, [line: 132], nil}], {:right_values, [line: 132], nil}]}]}]}]}, {:->, [line: 134], [[{:case, [line: 134], [{:leaf, [line: 134], []}]}], []]}]
13:13:58.632 [debug] Transforming recursive refs:
Body: {{:state, [line: 68], nil}, {:state, [line: 68], nil}}
Bindings: []
State: {:initial, [line: 61], nil}
13:13:58.632 [debug] Transforming recursive refs:
Body: {:__block__, [], [{:=, [line: 48], [{:all_edges, [line: 48], nil}, {:if, [line: 49], [{:==, [line: 49], [{{:., [line: 49], [{:metadata, [line: 49], nil}, :type]}, [no_parens: true, line: 49], []}, :undirected]}, [do: {:__block__, [], [{:=, [line: 50], [{:reverse_edge, [line: 50], nil}, {{:., [line: 50], [{:__aliases__, [line: 50], [:Graph]}, :edge]}, [line: 50], [{:to_id, [line: 50], nil}, {:from_id, [line: 50], nil}, {:weight, [line: 50], nil}, {:props, [line: 50], nil}]}]}, [{:new_edge, [line: 51], nil}, {:reverse_edge, [line: 51], nil}]]}, else: [{:new_edge, [line: 53], nil}]]]}]}, {:=, [line: 57], [{:new_edge_list, [line: 57], nil}, {:case, [line: 58], [{:edge_list, [line: 58], nil}, [do: [{:->, [line: 59], [[{:%{}, [line: 59], [variant: :empty]}], {:hd, [line: 59], [{:all_edges, [line: 59], nil}]}]}, {:->, [line: 60], [[{:_, [line: 60], nil}], {:++, [line: 60], [{:all_edges, [line: 60], nil}, {{:., [line: 60], [{:__aliases__, [line: 60], [:List]}, :wrap]}, [line: 60], [{:edge_list, [line: 60], nil}]}]}]}]]]}]}, {{:., [line: 63], [{:__aliases__, [line: 63], [:Graph]}, :graph]}, [line: 63], [{:vertex_map, [line: 63], nil}, {:new_edge_list, [line: 63], nil}, {:metadata, [line: 63], nil}]}]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.632 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.632 [debug] Generated fold cases after transformation: [{:->, [line: 62], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:__block__, [], [{:=, [line: 63], [{{:tail_result, [line: 63], nil}, {:new_acc, [line: 63], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 64], [{:result, [line: 64], nil}, {{:., [line: 64], [{:reducer_fn, [line: 64], nil}]}, [line: 64], [{:head, [line: 64], nil}, {:new_acc, [line: 64], nil}]}]}, {{:result, [line: 65], nil}, {:result, [line: 65], nil}}]}]}, {:->, [line: 67], [[{:%{}, [], [variant: :null]}], {{:state, [line: 68], nil}, {:state, [line: 68], nil}}]}]
13:13:58.632 [debug] Extracting cases from list: [{:->, [line: 129], [[{:case, [line: 129], [{:node, [line: 129], [{:value, [line: 129], nil}, {:left, [line: 129], nil}, {:right, [line: 129], nil}]}]}], {:__block__, [], [{:=, [line: 130], [{:left_values, [line: 130], nil}, {:recu, [line: 130], [{:left, [line: 130], nil}]}]}, {:=, [line: 131], [{:right_values, [line: 131], nil}, {:recu, [line: 131], [{:right, [line: 131], nil}]}]}, {:++, [line: 132], [{:left_values, [line: 132], nil}, {:++, [line: 132], [[{:value, [line: 132], nil}], {:right_values, [line: 132], nil}]}]}]}]}, {:->, [line: 134], [[{:case, [line: 134], [{:leaf, [line: 134], []}]}], []]}]
13:13:58.632 [debug] Transforming recursive refs:
Body: {{:., [line: 66], [{:__aliases__, [line: 66], [:Graph]}, :graph]}, [line: 66], [{:%{}, [line: 66], []}, {:new_edge, [line: 66], nil}, {:%{}, [line: 66], [type: :directed]}]}
Bindings: []
State: nil
13:13:58.633 [debug] Extracted fold cases: [{:->, [line: 129], [[{:case, [line: 129], [{:node, [line: 129], [{:value, [line: 129], nil}, {:left, [line: 129], nil}, {:right, [line: 129], nil}]}]}], {:__block__, [], [{:=, [line: 130], [{:left_values, [line: 130], nil}, {:recu, [line: 130], [{:left, [line: 130], nil}]}]}, {:=, [line: 131], [{:right_values, [line: 131], nil}, {:recu, [line: 131], [{:right, [line: 131], nil}]}]}, {:++, [line: 132], [{:left_values, [line: 132], nil}, {:++, [line: 132], [[{:value, [line: 132], nil}], {:right_values, [line: 132], nil}]}]}]}]}, {:->, [line: 134], [[{:case, [line: 134], [{:leaf, [line: 134], []}]}], []]}]
13:13:58.633 [debug] Final quoted expression: {:do_fold, [], [{:list, [line: 61], nil}, {:initial, [line: 61], nil}, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 62], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:__block__, [], [{:=, [line: 63], [{{:tail_result, [line: 63], nil}, {:new_acc, [line: 63], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 64], [{:result, [line: 64], nil}, {{:., [line: 64], [{:reducer_fn, [line: 64], nil}]}, [line: 64], [{:head, [line: 64], nil}, {:new_acc, [line: 64], nil}]}]}, {{:result, [line: 65], nil}, {:result, [line: 65], nil}}]}]}, {:->, [line: 67], [[{:%{}, [], [variant: :null]}], {{:state, [line: 68], nil}, {:state, [line: 68], nil}}]}]]]}]}]}]}
13:13:58.633 [debug] Generating fold cases: [{:->, [line: 129], [[{:case, [line: 129], [{:node, [line: 129], [{:value, [line: 129], nil}, {:left, [line: 129], nil}, {:right, [line: 129], nil}]}]}], {:__block__, [], [{:=, [line: 130], [{:left_values, [line: 130], nil}, {:recu, [line: 130], [{:left, [line: 130], nil}]}]}, {:=, [line: 131], [{:right_values, [line: 131], nil}, {:recu, [line: 131], [{:right, [line: 131], nil}]}]}, {:++, [line: 132], [{:left_values, [line: 132], nil}, {:++, [line: 132], [[{:value, [line: 132], nil}], {:right_values, [line: 132], nil}]}]}]}]}, {:->, [line: 134], [[{:case, [line: 134], [{:leaf, [line: 134], []}]}], []]}]
warning: variable "tail_result" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/chain.ex:63: Chain.reduce/3
13:13:58.633 [debug] Generated pattern: {:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]} for variant: :node
13:13:58.633 [debug] Transforming recursive refs:
Body: {:__block__, [], [{:=, [line: 130], [{:left_values, [line: 130], nil}, {:recu, [line: 130], [{:left, [line: 130], nil}]}]}, {:=, [line: 131], [{:right_values, [line: 131], nil}, {:recu, [line: 131], [{:right, [line: 131], nil}]}]}, {:++, [line: 132], [{:left_values, [line: 132], nil}, {:++, [line: 132], [[{:value, [line: 132], nil}], {:right_values, [line: 132], nil}]}]}]}
Bindings: [value: true, left: true, right: true]
State: nil
13:13:58.633 [debug] Generated fold cases after transformation: [{:->, [line: 47], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{:=, [line: 48], [{:all_edges, [line: 48], nil}, {:if, [line: 49], [{:==, [line: 49], [{{:., [line: 49], [{:metadata, [line: 49], nil}, :type]}, [no_parens: true, line: 49], []}, :undirected]}, [do: {:__block__, [], [{:=, [line: 50], [{:reverse_edge, [line: 50], nil}, {{:., [line: 50], [{:__aliases__, [line: 50], [:Graph]}, :edge]}, [line: 50], [{:to_id, [line: 50], nil}, {:from_id, [line: 50], nil}, {:weight, [line: 50], nil}, {:props, [line: 50], nil}]}]}, [{:new_edge, [line: 51], nil}, {:reverse_edge, [line: 51], nil}]]}, else: [{:new_edge, [line: 53], nil}]]]}]}, {:=, [line: 57], [{:new_edge_list, [line: 57], nil}, {:case, [line: 58], [{:edge_list, [line: 58], nil}, [do: [{:->, [line: 59], [[{:%{}, [line: 59], [variant: :empty]}], {:hd, [line: 59], [{:all_edges, [line: 59], nil}]}]}, {:->, [line: 60], [[{:_, [line: 60], nil}], {:++, [line: 60], [{:all_edges, [line: 60], nil}, {{:., [line: 60], [{:__aliases__, [line: 60], [:List]}, :wrap]}, [line: 60], [{:edge_list, [line: 60], nil}]}]}]}]]]}]}, {{:., [line: 63], [{:__aliases__, [line: 63], [:Graph]}, :graph]}, [line: 63], [{:vertex_map, [line: 63], nil}, {:new_edge_list, [line: 63], nil}, {:metadata, [line: 63], nil}]}]}]}, {:->, [line: 65], [[{:%{}, [], [variant: :empty]}], {{:., [line: 66], [{:__aliases__, [line: 66], [:Graph]}, :graph]}, [line: 66], [{:%{}, [line: 66], []}, {:new_edge, [line: 66], nil}, {:%{}, [line: 66], [type: :directed]}]}]}]
13:13:58.633 [debug] Processing recursive reference: {:recu, [line: 130], [{:left, [line: 130], nil}]}
13:13:58.633 [debug] Transformed recursive reference to: {:do_fold, [], [{:left, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.633 [debug] Processing recursive reference: {:recu, [line: 131], [{:right, [line: 131], nil}]}
13:13:58.633 [debug] Fold expression: {:list, [line: 74], nil}, opts: [], cases: [{:->, [line: 75], [[{:case, [line: 75], [{:cons, [line: 75], [{:head, [line: 75], nil}, {:tail, [line: 75], nil}]}]}], {:+, [line: 75], [1, {:recu, [line: 75], [{:tail, [line: 75], nil}]}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:null, [line: 76], []}]}], 0]}]
13:13:58.633 [debug] Transformed recursive reference to: {:do_fold, [], [{:right, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.633 [debug] Generated pattern: {:%{}, [], [variant: :leaf]} for variant: :leaf
13:13:58.633 [debug] Transforming recursive refs:
Body: []
Bindings: []
State: nil
13:13:58.633 [debug] Extracting cases from list: [{:->, [line: 75], [[{:case, [line: 75], [{:cons, [line: 75], [{:head, [line: 75], nil}, {:tail, [line: 75], nil}]}]}], {:+, [line: 75], [1, {:recu, [line: 75], [{:tail, [line: 75], nil}]}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:null, [line: 76], []}]}], 0]}]
13:13:58.633 [debug] Extracted fold cases: [{:->, [line: 75], [[{:case, [line: 75], [{:cons, [line: 75], [{:head, [line: 75], nil}, {:tail, [line: 75], nil}]}]}], {:+, [line: 75], [1, {:recu, [line: 75], [{:tail, [line: 75], nil}]}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:null, [line: 76], []}]}], 0]}]
13:13:58.633 [debug] Generating fold cases: [{:->, [line: 75], [[{:case, [line: 75], [{:cons, [line: 75], [{:head, [line: 75], nil}, {:tail, [line: 75], nil}]}]}], {:+, [line: 75], [1, {:recu, [line: 75], [{:tail, [line: 75], nil}]}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:null, [line: 76], []}]}], 0]}]
13:13:58.633 [debug] Generated fold cases after transformation: [{:->, [line: 129], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {:__block__, [], [{:=, [line: 130], [{:left_values, [line: 130], nil}, {:do_fold, [], [{:left, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 131], [{:right_values, [line: 131], nil}, {:do_fold, [], [{:right, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:++, [line: 132], [{:left_values, [line: 132], nil}, {:++, [line: 132], [[{:value, [line: 132], nil}], {:right_values, [line: 132], nil}]}]}]}]}, {:->, [line: 134], [[{:%{}, [], [variant: :leaf]}], []]}]
13:13:58.633 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.633 [debug] Transforming recursive refs:
Body: {:+, [line: 75], [1, {:recu, [line: 75], [{:tail, [line: 75], nil}]}]}
Bindings: [head: true, tail: true]
State: nil
13:13:58.633 [debug] Processing recursive reference: {:recu, [line: 75], [{:tail, [line: 75], nil}]}
13:13:58.633 [debug] Final quoted expression: {:do_fold, [], [{:graph, [line: 46], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 47], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{:=, [line: 48], [{:all_edges, [line: 48], nil}, {:if, [line: 49], [{:==, [line: 49], [{{:., [line: 49], [{:metadata, ...}, :type]}, [no_parens: true, line: 49], []}, :undirected]}, [do: {:__block__, [], [{:=, [line: 50], [{...}, ...]}, [{:new_edge, [...], ...}, {:reverse_edge, ...}]]}, else: [{:new_edge, [line: 53], nil}]]]}]}, {:=, [line: 57], [{:new_edge_list, [line: 57], nil}, {:case, [line: 58], [{:edge_list, [line: 58], nil}, [do: [{:->, [line: 59], [[{:%{}, ...}], {:hd, ...}]}, {:->, [line: 60], [[{...}], {...}]}]]]}]}, {{:., [line: 63], [{:__aliases__, [line: 63], [:Graph]}, :graph]}, [line: 63], [{:vertex_map, [line: 63], nil}, {:new_edge_list, [line: 63], nil}, {:metadata, [line: 63], nil}]}]}]}, {:->, [line: 65], [[{:%{}, [], [variant: :empty]}], {{:., [line: 66], [{:__aliases__, [line: 66], [:Graph]}, :graph]}, [line: 66], [{:%{}, [line: 66], []}, {:new_edge, [line: 66], nil}, {:%{}, [line: 66], [type: :directed]}]}]}]]]}]}]}]}
13:13:58.633 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.633 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.633 [debug] Transforming recursive refs:
Body: 0
Bindings: []
State: nil
13:13:58.633 [debug] Generated fold cases after transformation: [{:->, [line: 75], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:+, [line: 75], [1, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]}, {:->, [line: 76], [[{:%{}, [], [variant: :null]}], 0]}]
13:13:58.633 [debug] Final quoted expression: {:do_fold, [], [{:tree, [line: 128], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 129], [[{:%{}, [], [variant: :node, value: {:value, [], nil}, left: {:left, [], nil}, right: {:right, [], nil}]}], {:__block__, [], [{:=, [line: 130], [{:left_values, [line: 130], nil}, {:do_fold, [], [{:left, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 131], [{:right_values, [line: 131], nil}, {:do_fold, [], [{:right, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, ...}]], [{:value, [], BenBen}]}]}]}, {:++, [line: 132], [{:left_values, [line: 132], nil}, {:++, [line: 132], [[{:value, [line: 132], nil}], {:right_values, [line: 132], nil}]}]}]}]}, {:->, [line: 134], [[{:%{}, [], [variant: :leaf]}], []]}]]]}]}]}]}
13:13:58.633 [debug] Final quoted expression: {:do_fold, [], [{:list, [line: 74], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 75], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:+, [line: 75], [1, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]}, {:->, [line: 76], [[{:%{}, [], [variant: :null]}], 0]}]]]}]}]}]}
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:46: PropGraph.add_edge/5
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/parents.ex:128: Parents.collect_values/1
warning: variable "head" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/chain.ex:74: Chain.length/1
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/chain.ex:74: Chain.length/1
13:13:58.634 [debug] Fold expression: {:graph, [line: 72], nil}, opts: [], cases: [{:->, [line: 73], [[{:case, [line: 73], [{:graph, [line: 73], [{:vertex_map, [line: 73], nil}, {:edge_list, [line: 73], nil}, {:metadata, [line: 73], nil}]}]}], {:map_size, [line: 74], [{:vertex_map, [line: 74], nil}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:empty, [line: 76], []}]}], 0]}]
13:13:58.634 [debug] Extracting cases from list: [{:->, [line: 73], [[{:case, [line: 73], [{:graph, [line: 73], [{:vertex_map, [line: 73], nil}, {:edge_list, [line: 73], nil}, {:metadata, [line: 73], nil}]}]}], {:map_size, [line: 74], [{:vertex_map, [line: 74], nil}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:empty, [line: 76], []}]}], 0]}]
13:13:58.634 [debug] Fold expression: {:list, [line: 82], nil}, opts: [with: {{:., [line: 82], [{:__aliases__, [line: 82], [:List]}, :null]}, [line: 82], []}], cases: [{:->, [line: 83], [[{:case, [line: 83], [{:cons, [line: 83], [{:head, [line: 83], nil}, {:tail, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{{:_, [line: 84], nil}, {:acc, [line: 84], nil}}, {:recu, [line: 84], [{:tail, [line: 84], nil}]}]}, {:=, [line: 85], [{:result, [line: 85], nil}, {{:., [line: 85], [{:__aliases__, [line: 85], [:List]}, :cons]}, [line: 85], [{:head, [line: 85], nil}, {:acc, [line: 85], nil}]}]}, {{:result, [line: 86], nil}, {:result, [line: 86], nil}}]}]}, {:->, [line: 88], [[{:case, [line: 88], [{:null, [line: 88], []}]}], {{:state, [line: 89], nil}, {:state, [line: 89], nil}}]}]
13:13:58.634 [debug] Extracted fold cases: [{:->, [line: 73], [[{:case, [line: 73], [{:graph, [line: 73], [{:vertex_map, [line: 73], nil}, {:edge_list, [line: 73], nil}, {:metadata, [line: 73], nil}]}]}], {:map_size, [line: 74], [{:vertex_map, [line: 74], nil}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:empty, [line: 76], []}]}], 0]}]
13:13:58.634 [debug] Generating fold cases: [{:->, [line: 73], [[{:case, [line: 73], [{:graph, [line: 73], [{:vertex_map, [line: 73], nil}, {:edge_list, [line: 73], nil}, {:metadata, [line: 73], nil}]}]}], {:map_size, [line: 74], [{:vertex_map, [line: 74], nil}]}]}, {:->, [line: 76], [[{:case, [line: 76], [{:empty, [line: 76], []}]}], 0]}]
13:13:58.634 [debug] Extracting cases from list: [{:->, [line: 83], [[{:case, [line: 83], [{:cons, [line: 83], [{:head, [line: 83], nil}, {:tail, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{{:_, [line: 84], nil}, {:acc, [line: 84], nil}}, {:recu, [line: 84], [{:tail, [line: 84], nil}]}]}, {:=, [line: 85], [{:result, [line: 85], nil}, {{:., [line: 85], [{:__aliases__, [line: 85], [:List]}, :cons]}, [line: 85], [{:head, [line: 85], nil}, {:acc, [line: 85], nil}]}]}, {{:result, [line: 86], nil}, {:result, [line: 86], nil}}]}]}, {:->, [line: 88], [[{:case, [line: 88], [{:null, [line: 88], []}]}], {{:state, [line: 89], nil}, {:state, [line: 89], nil}}]}]
13:13:58.634 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.634 [debug] Transforming recursive refs:
Body: {:map_size, [line: 74], [{:vertex_map, [line: 74], nil}]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.634 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.634 [debug] Transforming recursive refs:
Body: 0
Bindings: []
State: nil
13:13:58.634 [debug] Generated fold cases after transformation: [{:->, [line: 73], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:map_size, [line: 74], [{:vertex_map, [line: 74], nil}]}]}, {:->, [line: 76], [[{:%{}, [], [variant: :empty]}], 0]}]
13:13:58.634 [debug] Extracted fold cases: [{:->, [line: 83], [[{:case, [line: 83], [{:cons, [line: 83], [{:head, [line: 83], nil}, {:tail, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{{:_, [line: 84], nil}, {:acc, [line: 84], nil}}, {:recu, [line: 84], [{:tail, [line: 84], nil}]}]}, {:=, [line: 85], [{:result, [line: 85], nil}, {{:., [line: 85], [{:__aliases__, [line: 85], [:List]}, :cons]}, [line: 85], [{:head, [line: 85], nil}, {:acc, [line: 85], nil}]}]}, {{:result, [line: 86], nil}, {:result, [line: 86], nil}}]}]}, {:->, [line: 88], [[{:case, [line: 88], [{:null, [line: 88], []}]}], {{:state, [line: 89], nil}, {:state, [line: 89], nil}}]}]
13:13:58.634 [debug] Final quoted expression: {:do_fold, [], [{:graph, [line: 72], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 73], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:map_size, [line: 74], [{:vertex_map, [line: 74], nil}]}]}, {:->, [line: 76], [[{:%{}, [], [variant: :empty]}], 0]}]]]}]}]}]}
13:13:58.634 [debug] Generating fold cases: [{:->, [line: 83], [[{:case, [line: 83], [{:cons, [line: 83], [{:head, [line: 83], nil}, {:tail, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{{:_, [line: 84], nil}, {:acc, [line: 84], nil}}, {:recu, [line: 84], [{:tail, [line: 84], nil}]}]}, {:=, [line: 85], [{:result, [line: 85], nil}, {{:., [line: 85], [{:__aliases__, [line: 85], [:List]}, :cons]}, [line: 85], [{:head, [line: 85], nil}, {:acc, [line: 85], nil}]}]}, {{:result, [line: 86], nil}, {:result, [line: 86], nil}}]}]}, {:->, [line: 88], [[{:case, [line: 88], [{:null, [line: 88], []}]}], {{:state, [line: 89], nil}, {:state, [line: 89], nil}}]}]
13:13:58.634 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
warning: variable "edge_list" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:72: PropGraph.vertex_count/1
13:13:58.635 [debug] Transforming recursive refs:
Body: {:__block__, [], [{:=, [line: 84], [{{:_, [line: 84], nil}, {:acc, [line: 84], nil}}, {:recu, [line: 84], [{:tail, [line: 84], nil}]}]}, {:=, [line: 85], [{:result, [line: 85], nil}, {{:., [line: 85], [{:__aliases__, [line: 85], [:List]}, :cons]}, [line: 85], [{:head, [line: 85], nil}, {:acc, [line: 85], nil}]}]}, {{:result, [line: 86], nil}, {:result, [line: 86], nil}}]}
Bindings: [head: true, tail: true]
State: {{:., [line: 82], [{:__aliases__, [line: 82], [:List]}, :null]}, [line: 82], []}
13:13:58.635 [debug] Processing recursive reference: {:recu, [line: 84], [{:tail, [line: 84], nil}]}
warning: variable "metadata" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:72: PropGraph.vertex_count/1
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:72: PropGraph.vertex_count/1
13:13:58.635 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.635 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.635 [debug] Transforming recursive refs:
Body: {{:state, [line: 89], nil}, {:state, [line: 89], nil}}
Bindings: []
State: {{:., [line: 82], [{:__aliases__, [line: 82], [:List]}, :null]}, [line: 82], []}
13:13:58.635 [debug] Generated fold cases after transformation: [{:->, [line: 83], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:__block__, [], [{:=, [line: 84], [{{:_, [line: 84], nil}, {:acc, [line: 84], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 85], [{:result, [line: 85], nil}, {{:., [line: 85], [{:__aliases__, [line: 85], [:List]}, :cons]}, [line: 85], [{:head, [line: 85], nil}, {:acc, [line: 85], nil}]}]}, {{:result, [line: 86], nil}, {:result, [line: 86], nil}}]}]}, {:->, [line: 88], [[{:%{}, [], [variant: :null]}], {{:state, [line: 89], nil}, {:state, [line: 89], nil}}]}]
13:13:58.635 [debug] Fold expression: {:graph, [line: 82], nil}, opts: [], cases: [{:->, [line: 83], [[{:case, [line: 83], [{:graph, [line: 83], [{:vertex_map, [line: 83], nil}, {:edge_list, [line: 83], nil}, {:metadata, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{:count, [line: 84], nil}, {:count_edges, [line: 84], [{:edge_list, [line: 84], nil}]}]}, {:if, [line: 86], [{:==, [line: 86], [{{:., [line: 86], [{:metadata, [line: 86], nil}, :type]}, [no_parens: true, line: 86], []}, :undirected]}, [do: {:div, [line: 88], [{:count, [line: 88], nil}, 2]}, else: {:count, [line: 90], nil}]]}]}]}, {:->, [line: 93], [[{:case, [line: 93], [{:empty, [line: 93], []}]}], 0]}]
13:13:58.635 [debug] Extracting cases from list: [{:->, [line: 83], [[{:case, [line: 83], [{:graph, [line: 83], [{:vertex_map, [line: 83], nil}, {:edge_list, [line: 83], nil}, {:metadata, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{:count, [line: 84], nil}, {:count_edges, [line: 84], [{:edge_list, [line: 84], nil}]}]}, {:if, [line: 86], [{:==, [line: 86], [{{:., [line: 86], [{:metadata, [line: 86], nil}, :type]}, [no_parens: true, line: 86], []}, :undirected]}, [do: {:div, [line: 88], [{:count, [line: 88], nil}, 2]}, else: {:count, [line: 90], nil}]]}]}]}, {:->, [line: 93], [[{:case, [line: 93], [{:empty, [line: 93], []}]}], 0]}]
13:13:58.635 [debug] Final quoted expression: {:do_fold, [], [{:list, [line: 82], nil}, {{:., [line: 82], [{:__aliases__, [line: 82], [:List]}, :null]}, [line: 82], []}, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 83], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:__block__, [], [{:=, [line: 84], [{{:_, [line: 84], nil}, {:acc, [line: 84], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {:=, [line: 85], [{:result, [line: 85], nil}, {{:., [line: 85], [{:__aliases__, [line: 85], [:List]}, :cons]}, [line: 85], [{:head, [line: 85], nil}, {:acc, [line: 85], nil}]}]}, {{:result, [line: 86], nil}, {:result, [line: 86], nil}}]}]}, {:->, [line: 88], [[{:%{}, [], [variant: :null]}], {{:state, [line: 89], nil}, {:state, [line: 89], nil}}]}]]]}]}]}]}
13:13:58.635 [debug] Extracted fold cases: [{:->, [line: 83], [[{:case, [line: 83], [{:graph, [line: 83], [{:vertex_map, [line: 83], nil}, {:edge_list, [line: 83], nil}, {:metadata, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{:count, [line: 84], nil}, {:count_edges, [line: 84], [{:edge_list, [line: 84], nil}]}]}, {:if, [line: 86], [{:==, [line: 86], [{{:., [line: 86], [{:metadata, [line: 86], nil}, :type]}, [no_parens: true, line: 86], []}, :undirected]}, [do: {:div, [line: 88], [{:count, [line: 88], nil}, 2]}, else: {:count, [line: 90], nil}]]}]}]}, {:->, [line: 93], [[{:case, [line: 93], [{:empty, [line: 93], []}]}], 0]}]
13:13:58.636 [debug] Generating fold cases: [{:->, [line: 83], [[{:case, [line: 83], [{:graph, [line: 83], [{:vertex_map, [line: 83], nil}, {:edge_list, [line: 83], nil}, {:metadata, [line: 83], nil}]}]}], {:__block__, [], [{:=, [line: 84], [{:count, [line: 84], nil}, {:count_edges, [line: 84], [{:edge_list, [line: 84], nil}]}]}, {:if, [line: 86], [{:==, [line: 86], [{{:., [line: 86], [{:metadata, [line: 86], nil}, :type]}, [no_parens: true, line: 86], []}, :undirected]}, [do: {:div, [line: 88], [{:count, [line: 88], nil}, 2]}, else: {:count, [line: 90], nil}]]}]}]}, {:->, [line: 93], [[{:case, [line: 93], [{:empty, [line: 93], []}]}], 0]}]
13:13:58.636 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.636 [debug] Transforming recursive refs:
Body: {:__block__, [], [{:=, [line: 84], [{:count, [line: 84], nil}, {:count_edges, [line: 84], [{:edge_list, [line: 84], nil}]}]}, {:if, [line: 86], [{:==, [line: 86], [{{:., [line: 86], [{:metadata, [line: 86], nil}, :type]}, [no_parens: true, line: 86], []}, :undirected]}, [do: {:div, [line: 88], [{:count, [line: 88], nil}, 2]}, else: {:count, [line: 90], nil}]]}]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.636 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.636 [debug] Transforming recursive refs:
Body: 0
Bindings: []
State: nil
13:13:58.636 [debug] Generated fold cases after transformation: [{:->, [line: 83], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{:=, [line: 84], [{:count, [line: 84], nil}, {:count_edges, [line: 84], [{:edge_list, [line: 84], nil}]}]}, {:if, [line: 86], [{:==, [line: 86], [{{:., [line: 86], [{:metadata, [line: 86], nil}, :type]}, [no_parens: true, line: 86], []}, :undirected]}, [do: {:div, [line: 88], [{:count, [line: 88], nil}, 2]}, else: {:count, [line: 90], nil}]]}]}]}, {:->, [line: 93], [[{:%{}, [], [variant: :empty]}], 0]}]
13:13:58.636 [debug] Fold expression: {:list1, [line: 95], nil}, opts: [], cases: [{:->, [line: 96], [[{:case, [line: 96], [{:cons, [line: 96], [{:head, [line: 96], nil}, {:tail, [line: 96], nil}]}]}], {{:., [line: 97], [{:__aliases__, [line: 97], [:List]}, :cons]}, [line: 97], [{:head, [line: 97], nil}, {:recu, [line: 97], [{:tail, [line: 97], nil}]}]}]}, {:->, [line: 99], [[{:case, [line: 99], [{:null, [line: 99], []}]}], {:list2, [line: 100], nil}]}]
warning: function merge_counts/2 is unused
lib/examples/parents.ex:75
13:13:58.636 [debug] Extracting cases from list: [{:->, [line: 96], [[{:case, [line: 96], [{:cons, [line: 96], [{:head, [line: 96], nil}, {:tail, [line: 96], nil}]}]}], {{:., [line: 97], [{:__aliases__, [line: 97], [:List]}, :cons]}, [line: 97], [{:head, [line: 97], nil}, {:recu, [line: 97], [{:tail, [line: 97], nil}]}]}]}, {:->, [line: 99], [[{:case, [line: 99], [{:null, [line: 99], []}]}], {:list2, [line: 100], nil}]}]
warning: function merge_with_level_increment/2 is unused
lib/examples/parents.ex:80
13:13:58.636 [debug] Extracted fold cases: [{:->, [line: 96], [[{:case, [line: 96], [{:cons, [line: 96], [{:head, [line: 96], nil}, {:tail, [line: 96], nil}]}]}], {{:., [line: 97], [{:__aliases__, [line: 97], [:List]}, :cons]}, [line: 97], [{:head, [line: 97], nil}, {:recu, [line: 97], [{:tail, [line: 97], nil}]}]}]}, {:->, [line: 99], [[{:case, [line: 99], [{:null, [line: 99], []}]}], {:list2, [line: 100], nil}]}]
13:13:58.636 [debug] Generating fold cases: [{:->, [line: 96], [[{:case, [line: 96], [{:cons, [line: 96], [{:head, [line: 96], nil}, {:tail, [line: 96], nil}]}]}], {{:., [line: 97], [{:__aliases__, [line: 97], [:List]}, :cons]}, [line: 97], [{:head, [line: 97], nil}, {:recu, [line: 97], [{:tail, [line: 97], nil}]}]}]}, {:->, [line: 99], [[{:case, [line: 99], [{:null, [line: 99], []}]}], {:list2, [line: 100], nil}]}]
13:13:58.636 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.636 [debug] Transforming recursive refs:
Body: {{:., [line: 97], [{:__aliases__, [line: 97], [:List]}, :cons]}, [line: 97], [{:head, [line: 97], nil}, {:recu, [line: 97], [{:tail, [line: 97], nil}]}]}
Bindings: [head: true, tail: true]
State: nil
13:13:58.636 [debug] Processing recursive reference: {:recu, [line: 97], [{:tail, [line: 97], nil}]}
13:13:58.636 [debug] Final quoted expression: {:do_fold, [], [{:graph, [line: 82], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 83], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{:=, [line: 84], [{:count, [line: 84], nil}, {:count_edges, [line: 84], [{:edge_list, [line: 84], nil}]}]}, {:if, [line: 86], [{:==, [line: 86], [{{:., [line: 86], [{:metadata, [line: 86], nil}, :type]}, [no_parens: true, line: 86], []}, :undirected]}, [do: {:div, [line: 88], [{:count, [line: 88], nil}, 2]}, else: {:count, [line: 90], nil}]]}]}]}, {:->, [line: 93], [[{:%{}, [], [variant: :empty]}], 0]}]]]}]}]}]}
13:13:58.636 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.636 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.636 [debug] Transforming recursive refs:
Body: {:list2, [line: 100], nil}
Bindings: []
State: nil
13:13:58.636 [debug] Generated fold cases after transformation: [{:->, [line: 96], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {{:., [line: 97], [{:__aliases__, [line: 97], [:List]}, :cons]}, [line: 97], [{:head, [line: 97], nil}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]}, {:->, [line: 99], [[{:%{}, [], [variant: :null]}], {:list2, [line: 100], nil}]}]
13:13:58.637 [debug] Final quoted expression: {:do_fold, [], [{:list1, [line: 95], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 96], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {{:., [line: 97], [{:__aliases__, [line: 97], [:List]}, :cons]}, [line: 97], [{:head, [line: 97], nil}, {:do_fold, [], [{:tail, [], nil}, nil, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}]}, {:->, [line: 99], [[{:%{}, [], [variant: :null]}], {:list2, [line: 100], nil}]}]]]}]}]}]}
warning: variable "vertex_map" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:82: PropGraph.edge_count/1
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:82: PropGraph.edge_count/1
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/chain.ex:95: Chain.concat/2
13:13:58.637 [debug] Fold expression: {:graph, [line: 99], nil}, opts: [], cases: [{:->, [line: 100], [[{:case, [line: 100], [{:graph, [line: 100], [{:vertex_map, [line: 100], nil}, {:edge_list, [line: 100], nil}, {:metadata, [line: 100], nil}]}]}], {:case, [line: 101], [{{:., [line: 101], [{:__aliases__, [line: 101], [:Map]}, :get]}, [line: 101], [{:vertex_map, [line: 101], nil}, {:vertex_id, [line: 101], nil}]}, [do: [{:->, [line: 102], [[nil], []]}, {:->, [line: 103], [[{:vertex, [line: 103], nil}], {:extract_neighbors, [line: 103], [{:edge_list, [line: 103], nil}, {:vertex_id, [line: 103], nil}]}]}]]]}]}, {:->, [line: 106], [[{:case, [line: 106], [{:empty, [line: 106], []}]}], []]}]
13:13:58.637 [debug] Fold expression: {:list, [line: 106], nil}, opts: [with: {:n, [line: 106], nil}], cases: [{:->, [line: 107], [[{:case, [line: 107], [{:cons, [line: 107], [{:head, [line: 107], nil}, {:tail, [line: 107], nil}]}]}], {:if, [line: 108], [{:>, [line: 108], [{:state, [line: 108], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 109], [{{:tail_result, [line: 109], nil}, {:new_count, [line: 109], nil}}, {:recu, [line: 109], [{:tail, [line: 109], nil}]}]}, {{{:., [line: 110], [{:__aliases__, [line: 110], [:List]}, :cons]}, [line: 110], [{:head, [line: 110], nil}, {:tail_result, [line: 110], nil}]}, {:-, [line: 110], [{:new_count, [line: 110], nil}, 1]}}]}, else: {{{:., [line: 112], [{:__aliases__, [line: 112], [:List]}, :null]}, [line: 112], []}, 0}]]}]}, {:->, [line: 115], [[{:case, [line: 115], [{:null, [line: 115], []}]}], {{{:., [line: 116], [{:__aliases__, [line: 116], [:List]}, :null]}, [line: 116], []}, {:state, [line: 116], nil}}]}]
13:13:58.637 [debug] Extracting cases from list: [{:->, [line: 107], [[{:case, [line: 107], [{:cons, [line: 107], [{:head, [line: 107], nil}, {:tail, [line: 107], nil}]}]}], {:if, [line: 108], [{:>, [line: 108], [{:state, [line: 108], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 109], [{{:tail_result, [line: 109], nil}, {:new_count, [line: 109], nil}}, {:recu, [line: 109], [{:tail, [line: 109], nil}]}]}, {{{:., [line: 110], [{:__aliases__, [line: 110], [:List]}, :cons]}, [line: 110], [{:head, [line: 110], nil}, {:tail_result, [line: 110], nil}]}, {:-, [line: 110], [{:new_count, [line: 110], nil}, 1]}}]}, else: {{{:., [line: 112], [{:__aliases__, [line: 112], [:List]}, :null]}, [line: 112], []}, 0}]]}]}, {:->, [line: 115], [[{:case, [line: 115], [{:null, [line: 115], []}]}], {{{:., [line: 116], [{:__aliases__, [line: 116], [:List]}, :null]}, [line: 116], []}, {:state, [line: 116], nil}}]}]
13:13:58.637 [debug] Extracting cases from list: [{:->, [line: 100], [[{:case, [line: 100], [{:graph, [line: 100], [{:vertex_map, [line: 100], nil}, {:edge_list, [line: 100], nil}, {:metadata, [line: 100], nil}]}]}], {:case, [line: 101], [{{:., [line: 101], [{:__aliases__, [line: 101], [:Map]}, :get]}, [line: 101], [{:vertex_map, [line: 101], nil}, {:vertex_id, [line: 101], nil}]}, [do: [{:->, [line: 102], [[nil], []]}, {:->, [line: 103], [[{:vertex, [line: 103], nil}], {:extract_neighbors, [line: 103], [{:edge_list, [line: 103], nil}, {:vertex_id, [line: 103], nil}]}]}]]]}]}, {:->, [line: 106], [[{:case, [line: 106], [{:empty, [line: 106], []}]}], []]}]
13:13:58.637 [debug] Extracted fold cases: [{:->, [line: 107], [[{:case, [line: 107], [{:cons, [line: 107], [{:head, [line: 107], nil}, {:tail, [line: 107], nil}]}]}], {:if, [line: 108], [{:>, [line: 108], [{:state, [line: 108], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 109], [{{:tail_result, [line: 109], nil}, {:new_count, [line: 109], nil}}, {:recu, [line: 109], [{:tail, [line: 109], nil}]}]}, {{{:., [line: 110], [{:__aliases__, [line: 110], [:List]}, :cons]}, [line: 110], [{:head, [line: 110], nil}, {:tail_result, [line: 110], nil}]}, {:-, [line: 110], [{:new_count, [line: 110], nil}, 1]}}]}, else: {{{:., [line: 112], [{:__aliases__, [line: 112], [:List]}, :null]}, [line: 112], []}, 0}]]}]}, {:->, [line: 115], [[{:case, [line: 115], [{:null, [line: 115], []}]}], {{{:., [line: 116], [{:__aliases__, [line: 116], [:List]}, :null]}, [line: 116], []}, {:state, [line: 116], nil}}]}]
13:13:58.637 [debug] Extracted fold cases: [{:->, [line: 100], [[{:case, [line: 100], [{:graph, [line: 100], [{:vertex_map, [line: 100], nil}, {:edge_list, [line: 100], nil}, {:metadata, [line: 100], nil}]}]}], {:case, [line: 101], [{{:., [line: 101], [{:__aliases__, [line: 101], [:Map]}, :get]}, [line: 101], [{:vertex_map, [line: 101], nil}, {:vertex_id, [line: 101], nil}]}, [do: [{:->, [line: 102], [[nil], []]}, {:->, [line: 103], [[{:vertex, [line: 103], nil}], {:extract_neighbors, [line: 103], [{:edge_list, [line: 103], nil}, {:vertex_id, [line: 103], nil}]}]}]]]}]}, {:->, [line: 106], [[{:case, [line: 106], [{:empty, [line: 106], []}]}], []]}]
13:13:58.637 [debug] Generating fold cases: [{:->, [line: 107], [[{:case, [line: 107], [{:cons, [line: 107], [{:head, [line: 107], nil}, {:tail, [line: 107], nil}]}]}], {:if, [line: 108], [{:>, [line: 108], [{:state, [line: 108], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 109], [{{:tail_result, [line: 109], nil}, {:new_count, [line: 109], nil}}, {:recu, [line: 109], [{:tail, [line: 109], nil}]}]}, {{{:., [line: 110], [{:__aliases__, [line: 110], [:List]}, :cons]}, [line: 110], [{:head, [line: 110], nil}, {:tail_result, [line: 110], nil}]}, {:-, [line: 110], [{:new_count, [line: 110], nil}, 1]}}]}, else: {{{:., [line: 112], [{:__aliases__, [line: 112], [:List]}, :null]}, [line: 112], []}, 0}]]}]}, {:->, [line: 115], [[{:case, [line: 115], [{:null, [line: 115], []}]}], {{{:., [line: 116], [{:__aliases__, [line: 116], [:List]}, :null]}, [line: 116], []}, {:state, [line: 116], nil}}]}]
13:13:58.637 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.637 [debug] Generating fold cases: [{:->, [line: 100], [[{:case, [line: 100], [{:graph, [line: 100], [{:vertex_map, [line: 100], nil}, {:edge_list, [line: 100], nil}, {:metadata, [line: 100], nil}]}]}], {:case, [line: 101], [{{:., [line: 101], [{:__aliases__, [line: 101], [:Map]}, :get]}, [line: 101], [{:vertex_map, [line: 101], nil}, {:vertex_id, [line: 101], nil}]}, [do: [{:->, [line: 102], [[nil], []]}, {:->, [line: 103], [[{:vertex, [line: 103], nil}], {:extract_neighbors, [line: 103], [{:edge_list, [line: 103], nil}, {:vertex_id, [line: 103], nil}]}]}]]]}]}, {:->, [line: 106], [[{:case, [line: 106], [{:empty, [line: 106], []}]}], []]}]
13:13:58.637 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.638 [debug] Transforming recursive refs:
Body: {:case, [line: 101], [{{:., [line: 101], [{:__aliases__, [line: 101], [:Map]}, :get]}, [line: 101], [{:vertex_map, [line: 101], nil}, {:vertex_id, [line: 101], nil}]}, [do: [{:->, [line: 102], [[nil], []]}, {:->, [line: 103], [[{:vertex, [line: 103], nil}], {:extract_neighbors, [line: 103], [{:edge_list, [line: 103], nil}, {:vertex_id, [line: 103], nil}]}]}]]]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.638 [debug] Transforming recursive refs:
Body: {:if, [line: 108], [{:>, [line: 108], [{:state, [line: 108], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 109], [{{:tail_result, [line: 109], nil}, {:new_count, [line: 109], nil}}, {:recu, [line: 109], [{:tail, [line: 109], nil}]}]}, {{{:., [line: 110], [{:__aliases__, [line: 110], [:List]}, :cons]}, [line: 110], [{:head, [line: 110], nil}, {:tail_result, [line: 110], nil}]}, {:-, [line: 110], [{:new_count, [line: 110], nil}, 1]}}]}, else: {{{:., [line: 112], [{:__aliases__, [line: 112], [:List]}, :null]}, [line: 112], []}, 0}]]}
Bindings: [head: true, tail: true]
State: {:n, [line: 106], nil}
13:13:58.638 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.638 [debug] Transforming recursive refs:
Body: []
Bindings: []
State: nil
13:13:58.638 [debug] Processing recursive reference: {:recu, [line: 109], [{:tail, [line: 109], nil}]}
13:13:58.638 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.638 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.638 [debug] Generated fold cases after transformation: [{:->, [line: 100], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:case, [line: 101], [{{:., [line: 101], [{:__aliases__, [line: 101], [:Map]}, :get]}, [line: 101], [{:vertex_map, [line: 101], nil}, {:vertex_id, [line: 101], nil}]}, [do: [{:->, [line: 102], [[nil], []]}, {:->, [line: 103], [[{:vertex, [line: 103], nil}], {:extract_neighbors, [line: 103], [{:edge_list, [line: 103], nil}, {:vertex_id, [line: 103], nil}]}]}]]]}]}, {:->, [line: 106], [[{:%{}, [], [variant: :empty]}], []]}]
13:13:58.638 [debug] Transforming recursive refs:
Body: {{{:., [line: 116], [{:__aliases__, [line: 116], [:List]}, :null]}, [line: 116], []}, {:state, [line: 116], nil}}
Bindings: []
State: {:n, [line: 106], nil}
13:13:58.638 [debug] Final quoted expression: {:do_fold, [], [{:graph, [line: 99], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 100], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:case, [line: 101], [{{:., [line: 101], [{:__aliases__, [line: 101], [:Map]}, :get]}, [line: 101], [{:vertex_map, [line: 101], nil}, {:vertex_id, [line: 101], nil}]}, [do: [{:->, [line: 102], [[nil], []]}, {:->, [line: 103], [[{:vertex, [line: 103], nil}], {:extract_neighbors, [line: 103], [{:edge_list, [line: 103], nil}, {:vertex_id, [line: 103], nil}]}]}]]]}]}, {:->, [line: 106], [[{:%{}, [], [variant: :empty]}], []]}]]]}]}]}]}
13:13:58.638 [debug] Generated fold cases after transformation: [{:->, [line: 107], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:if, [line: 108], [{:>, [line: 108], [{:state, [line: 108], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 109], [{{:tail_result, [line: 109], nil}, {:new_count, [line: 109], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {{{:., [line: 110], [{:__aliases__, [line: 110], [:List]}, :cons]}, [line: 110], [{:head, [line: 110], nil}, {:tail_result, [line: 110], nil}]}, {:-, [line: 110], [{:new_count, [line: 110], nil}, 1]}}]}, else: {{{:., [line: 112], [{:__aliases__, [line: 112], [:List]}, :null]}, [line: 112], []}, 0}]]}]}, {:->, [line: 115], [[{:%{}, [], [variant: :null]}], {{{:., [line: 116], [{:__aliases__, [line: 116], [:List]}, :null]}, [line: 116], []}, {:state, [line: 116], nil}}]}]
warning: variable "vertex" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:103: PropGraph.get_neighbors/2
warning: variable "metadata" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:99: PropGraph.get_neighbors/2
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:99: PropGraph.get_neighbors/2
13:13:58.638 [debug] Final quoted expression: {:do_fold, [], [{:list, [line: 106], nil}, {:n, [line: 106], nil}, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 107], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:if, [line: 108], [{:>, [line: 108], [{:state, [line: 108], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 109], [{{:tail_result, [line: 109], nil}, {:new_count, [line: 109], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, ...], [...]}, {:var!, [...], ...}]}]}, {{{:., [line: 110], [{:__aliases__, [line: 110], [:List]}, :cons]}, [line: 110], [{:head, [line: 110], nil}, {:tail_result, [line: 110], nil}]}, {:-, [line: 110], [{:new_count, [line: 110], nil}, 1]}}]}, else: {{{:., [line: 112], [{:__aliases__, [line: 112], [:List]}, :null]}, [line: 112], []}, 0}]]}]}, {:->, [line: 115], [[{:%{}, [], [variant: :null]}], {{{:., [line: 116], [{:__aliases__, [line: 116], [:List]}, :null]}, [line: 116], []}, {:state, [line: 116], nil}}]}]]]}]}]}]}
13:13:58.638 [debug] Fold expression: {:graph, [line: 113], nil}, opts: [], cases: [{:->, [line: 114], [[{:case, [line: 114], [{:graph, [line: 114], [{:vertex_map, [line: 114], nil}, {:edge_list, [line: 114], nil}, {:metadata, [line: 114], nil}]}]}], {:__block__, [], [{:=, [line: 115], [{:{}, [line: 115], [{:came_from, [line: 115], nil}, {:_, [line: 115], nil}, {:_, [line: 115], nil}]}, {:find_path, [line: 115], [{:vertex_map, [line: 115], nil}, {:edge_list, [line: 115], nil}, {:start_id, [line: 115], nil}, {:end_id, [line: 115], nil}]}]}, {:reconstruct_path, [line: 116], [{:came_from, [line: 116], nil}, {:end_id, [line: 116], nil}]}]}]}, {:->, [line: 118], [[{:case, [line: 118], [{:empty, [line: 118], []}]}], []]}]
13:13:58.639 [debug] Fold expression: {:list, [line: 122], nil}, opts: [with: {:n, [line: 122], nil}], cases: [{:->, [line: 123], [[{:case, [line: 123], [{:cons, [line: 123], [{:head, [line: 123], nil}, {:tail, [line: 123], nil}]}]}], {:if, [line: 124], [{:>, [line: 124], [{:state, [line: 124], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 125], [{{:result, [line: 125], nil}, {:new_count, [line: 125], nil}}, {:recu, [line: 125], [{:tail, [line: 125], nil}]}]}, {{:result, [line: 126], nil}, {:-, [line: 126], [{:new_count, [line: 126], nil}, 1]}}]}, else: {{{:., [line: 128], [{:__aliases__, [line: 128], [:List]}, :cons]}, [line: 128], [{:head, [line: 128], nil}, {:recu, [line: 128], [{:tail, [line: 128], nil}]}]}, 0}]]}]}, {:->, [line: 131], [[{:case, [line: 131], [{:null, [line: 131], []}]}], {{{:., [line: 132], [{:__aliases__, [line: 132], [:List]}, :null]}, [line: 132], []}, {:state, [line: 132], nil}}]}]
13:13:58.639 [debug] Extracting cases from list: [{:->, [line: 114], [[{:case, [line: 114], [{:graph, [line: 114], [{:vertex_map, [line: 114], nil}, {:edge_list, [line: 114], nil}, {:metadata, [line: 114], nil}]}]}], {:__block__, [], [{:=, [line: 115], [{:{}, [line: 115], [{:came_from, [line: 115], nil}, {:_, [line: 115], nil}, {:_, [line: 115], nil}]}, {:find_path, [line: 115], [{:vertex_map, [line: 115], nil}, {:edge_list, [line: 115], nil}, {:start_id, [line: 115], nil}, {:end_id, [line: 115], nil}]}]}, {:reconstruct_path, [line: 116], [{:came_from, [line: 116], nil}, {:end_id, [line: 116], nil}]}]}]}, {:->, [line: 118], [[{:case, [line: 118], [{:empty, [line: 118], []}]}], []]}]
13:13:58.639 [debug] Extracting cases from list: [{:->, [line: 123], [[{:case, [line: 123], [{:cons, [line: 123], [{:head, [line: 123], nil}, {:tail, [line: 123], nil}]}]}], {:if, [line: 124], [{:>, [line: 124], [{:state, [line: 124], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 125], [{{:result, [line: 125], nil}, {:new_count, [line: 125], nil}}, {:recu, [line: 125], [{:tail, [line: 125], nil}]}]}, {{:result, [line: 126], nil}, {:-, [line: 126], [{:new_count, [line: 126], nil}, 1]}}]}, else: {{{:., [line: 128], [{:__aliases__, [line: 128], [:List]}, :cons]}, [line: 128], [{:head, [line: 128], nil}, {:recu, [line: 128], [{:tail, [line: 128], nil}]}]}, 0}]]}]}, {:->, [line: 131], [[{:case, [line: 131], [{:null, [line: 131], []}]}], {{{:., [line: 132], [{:__aliases__, [line: 132], [:List]}, :null]}, [line: 132], []}, {:state, [line: 132], nil}}]}]
13:13:58.639 [debug] Extracted fold cases: [{:->, [line: 114], [[{:case, [line: 114], [{:graph, [line: 114], [{:vertex_map, [line: 114], nil}, {:edge_list, [line: 114], nil}, {:metadata, [line: 114], nil}]}]}], {:__block__, [], [{:=, [line: 115], [{:{}, [line: 115], [{:came_from, [line: 115], nil}, {:_, [line: 115], nil}, {:_, [line: 115], nil}]}, {:find_path, [line: 115], [{:vertex_map, [line: 115], nil}, {:edge_list, [line: 115], nil}, {:start_id, [line: 115], nil}, {:end_id, [line: 115], nil}]}]}, {:reconstruct_path, [line: 116], [{:came_from, [line: 116], nil}, {:end_id, [line: 116], nil}]}]}]}, {:->, [line: 118], [[{:case, [line: 118], [{:empty, [line: 118], []}]}], []]}]
13:13:58.639 [debug] Generating fold cases: [{:->, [line: 114], [[{:case, [line: 114], [{:graph, [line: 114], [{:vertex_map, [line: 114], nil}, {:edge_list, [line: 114], nil}, {:metadata, [line: 114], nil}]}]}], {:__block__, [], [{:=, [line: 115], [{:{}, [line: 115], [{:came_from, [line: 115], nil}, {:_, [line: 115], nil}, {:_, [line: 115], nil}]}, {:find_path, [line: 115], [{:vertex_map, [line: 115], nil}, {:edge_list, [line: 115], nil}, {:start_id, [line: 115], nil}, {:end_id, [line: 115], nil}]}]}, {:reconstruct_path, [line: 116], [{:came_from, [line: 116], nil}, {:end_id, [line: 116], nil}]}]}]}, {:->, [line: 118], [[{:case, [line: 118], [{:empty, [line: 118], []}]}], []]}]
13:13:58.639 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.639 [debug] Extracted fold cases: [{:->, [line: 123], [[{:case, [line: 123], [{:cons, [line: 123], [{:head, [line: 123], nil}, {:tail, [line: 123], nil}]}]}], {:if, [line: 124], [{:>, [line: 124], [{:state, [line: 124], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 125], [{{:result, [line: 125], nil}, {:new_count, [line: 125], nil}}, {:recu, [line: 125], [{:tail, [line: 125], nil}]}]}, {{:result, [line: 126], nil}, {:-, [line: 126], [{:new_count, [line: 126], nil}, 1]}}]}, else: {{{:., [line: 128], [{:__aliases__, [line: 128], [:List]}, :cons]}, [line: 128], [{:head, [line: 128], nil}, {:recu, [line: 128], [{:tail, [line: 128], nil}]}]}, 0}]]}]}, {:->, [line: 131], [[{:case, [line: 131], [{:null, [line: 131], []}]}], {{{:., [line: 132], [{:__aliases__, [line: 132], [:List]}, :null]}, [line: 132], []}, {:state, [line: 132], nil}}]}]
13:13:58.639 [debug] Transforming recursive refs:
Body: {:__block__, [], [{:=, [line: 115], [{:{}, [line: 115], [{:came_from, [line: 115], nil}, {:_, [line: 115], nil}, {:_, [line: 115], nil}]}, {:find_path, [line: 115], [{:vertex_map, [line: 115], nil}, {:edge_list, [line: 115], nil}, {:start_id, [line: 115], nil}, {:end_id, [line: 115], nil}]}]}, {:reconstruct_path, [line: 116], [{:came_from, [line: 116], nil}, {:end_id, [line: 116], nil}]}]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.639 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.639 [debug] Transforming recursive refs:
Body: []
Bindings: []
State: nil
13:13:58.639 [debug] Generating fold cases: [{:->, [line: 123], [[{:case, [line: 123], [{:cons, [line: 123], [{:head, [line: 123], nil}, {:tail, [line: 123], nil}]}]}], {:if, [line: 124], [{:>, [line: 124], [{:state, [line: 124], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 125], [{{:result, [line: 125], nil}, {:new_count, [line: 125], nil}}, {:recu, [line: 125], [{:tail, [line: 125], nil}]}]}, {{:result, [line: 126], nil}, {:-, [line: 126], [{:new_count, [line: 126], nil}, 1]}}]}, else: {{{:., [line: 128], [{:__aliases__, [line: 128], [:List]}, :cons]}, [line: 128], [{:head, [line: 128], nil}, {:recu, [line: 128], [{:tail, [line: 128], nil}]}]}, 0}]]}]}, {:->, [line: 131], [[{:case, [line: 131], [{:null, [line: 131], []}]}], {{{:., [line: 132], [{:__aliases__, [line: 132], [:List]}, :null]}, [line: 132], []}, {:state, [line: 132], nil}}]}]
13:13:58.639 [debug] Generated pattern: {:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]} for variant: :cons
13:13:58.639 [debug] Generated fold cases after transformation: [{:->, [line: 114], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{:=, [line: 115], [{:{}, [line: 115], [{:came_from, [line: 115], nil}, {:_, [line: 115], nil}, {:_, [line: 115], nil}]}, {:find_path, [line: 115], [{:vertex_map, [line: 115], nil}, {:edge_list, [line: 115], nil}, {:start_id, [line: 115], nil}, {:end_id, [line: 115], nil}]}]}, {:reconstruct_path, [line: 116], [{:came_from, [line: 116], nil}, {:end_id, [line: 116], nil}]}]}]}, {:->, [line: 118], [[{:%{}, [], [variant: :empty]}], []]}]
13:13:58.639 [debug] Transforming recursive refs:
Body: {:if, [line: 124], [{:>, [line: 124], [{:state, [line: 124], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 125], [{{:result, [line: 125], nil}, {:new_count, [line: 125], nil}}, {:recu, [line: 125], [{:tail, [line: 125], nil}]}]}, {{:result, [line: 126], nil}, {:-, [line: 126], [{:new_count, [line: 126], nil}, 1]}}]}, else: {{{:., [line: 128], [{:__aliases__, [line: 128], [:List]}, :cons]}, [line: 128], [{:head, [line: 128], nil}, {:recu, [line: 128], [{:tail, [line: 128], nil}]}]}, 0}]]}
Bindings: [head: true, tail: true]
State: {:n, [line: 122], nil}
13:13:58.639 [debug] Processing recursive reference: {:recu, [line: 125], [{:tail, [line: 125], nil}]}
13:13:58.639 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.639 [debug] Processing recursive reference: {:recu, [line: 128], [{:tail, [line: 128], nil}]}
13:13:58.639 [debug] Transformed recursive reference to: {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}
13:13:58.639 [debug] Generated pattern: {:%{}, [], [variant: :null]} for variant: :null
13:13:58.639 [debug] Transforming recursive refs:
Body: {{{:., [line: 132], [{:__aliases__, [line: 132], [:List]}, :null]}, [line: 132], []}, {:state, [line: 132], nil}}
Bindings: []
State: {:n, [line: 122], nil}
13:13:58.639 [debug] Final quoted expression: {:do_fold, [], [{:graph, [line: 113], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 114], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{:=, [line: 115], [{:{}, [line: 115], [{:came_from, [line: 115], nil}, {:_, [line: 115], nil}, {:_, [line: 115], nil}]}, {:find_path, [line: 115], [{:vertex_map, [line: 115], nil}, {:edge_list, [line: 115], nil}, {:start_id, [line: 115], nil}, {:end_id, [line: 115], nil}]}]}, {:reconstruct_path, [line: 116], [{:came_from, [line: 116], nil}, {:end_id, [line: 116], nil}]}]}]}, {:->, [line: 118], [[{:%{}, [], [variant: :empty]}], []]}]]]}]}]}]}
13:13:58.639 [debug] Generated fold cases after transformation: [{:->, [line: 123], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:if, [line: 124], [{:>, [line: 124], [{:state, [line: 124], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 125], [{{:result, [line: 125], nil}, {:new_count, [line: 125], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, {{:result, [line: 126], nil}, {:-, [line: 126], [{:new_count, [line: 126], nil}, 1]}}]}, else: {{{:., [line: 128], [{:__aliases__, [line: 128], [:List]}, :cons]}, [line: 128], [{:head, [line: 128], nil}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}]}]}, 0}]]}]}, {:->, [line: 131], [[{:%{}, [], [variant: :null]}], {{{:., [line: 132], [{:__aliases__, [line: 132], [:List]}, :null]}, [line: 132], []}, {:state, [line: 132], nil}}]}]
warning: variable "metadata" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:113: PropGraph.shortest_path/3
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:113: PropGraph.shortest_path/3
13:13:58.639 [debug] Final quoted expression: {:do_fold, [], [{:list, [line: 122], nil}, {:n, [line: 122], nil}, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 123], [[{:%{}, [], [variant: :cons, head: {:head, [], nil}, tail: {:tail, [], nil}]}], {:if, [line: 124], [{:>, [line: 124], [{:state, [line: 124], nil}, 0]}, [do: {:__block__, [], [{:=, [line: 125], [{{:result, [line: 125], nil}, {:new_count, [line: 125], nil}}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, ...], [...]}, {:var!, [...], ...}]}]}, {{:result, [line: 126], nil}, {:-, [line: 126], [{:new_count, [line: 126], nil}, 1]}}]}, else: {{{:., [line: 128], [{:__aliases__, [line: 128], [:List]}, :cons]}, [line: 128], [{:head, [line: 128], nil}, {:do_fold, [], [{:tail, [], nil}, {:var!, [context: BenBen, imports: [{...}, ...]], [{:state, ...}]}, {:var!, [context: BenBen, imports: [...]], [{...}]}]}]}, 0}]]}]}, {:->, [line: 131], [[{:%{}, [], [variant: :null]}], {{{:., [line: 132], [{:__aliases__, [line: 132], [:List]}, :null]}, [line: 132], []}, {:state, [line: 132], nil}}]}]]]}]}]}]}
13:13:58.640 [debug] Fold expression: {:graph, [line: 125], nil}, opts: [], cases: [{:->, [line: 126], [[{:case, [line: 126], [{:graph, [line: 126], [{:vertex_map, [line: 126], nil}, {:edge_list, [line: 126], nil}, {:metadata, [line: 126], nil}]}]}], {:case, [line: 127], [{{:., [line: 127], [{:__aliases__, [line: 127], [:Map]}, :keys]}, [line: 127], [{:vertex_map, [line: 127], nil}]}, [do: [{:->, [line: 128], [[[]], true]}, {:->, [line: 131], [[{:=, [line: 131], [[{:|, [line: 131], [{:first, [line: 131], nil}, {:_, [line: 131], nil}]}], {:all_vertices, [line: 131], nil}]}], {:__block__, [], [{:=, [line: 132], [{:visited, [line: 132], nil}, {:depth_first_search, [line: 132], [{:vertex_map, [line: 132], nil}, {:edge_list, [line: 132], nil}, {:first, [line: 132], nil}, {{:., [line: 132], [{:__aliases__, [line: 132], [:MapSet]}, :new]}, [line: 132], []}]}]}, {:==, [line: 133], [{{:., [line: 133], [{:__aliases__, [line: 133], [:MapSet]}, :size]}, [line: 133], [{:visited, [line: 133], nil}]}, {:length, [line: 133], [{:all_vertices, [line: 133], nil}]}]}]}]}]]]}]}, {:->, [line: 137], [[{:case, [line: 137], [{:empty, [line: 137], []}]}], true]}]
13:13:58.640 [debug] Extracting cases from list: [{:->, [line: 126], [[{:case, [line: 126], [{:graph, [line: 126], [{:vertex_map, [line: 126], nil}, {:edge_list, [line: 126], nil}, {:metadata, [line: 126], nil}]}]}], {:case, [line: 127], [{{:., [line: 127], [{:__aliases__, [line: 127], [:Map]}, :keys]}, [line: 127], [{:vertex_map, [line: 127], nil}]}, [do: [{:->, [line: 128], [[[]], true]}, {:->, [line: 131], [[{:=, [line: 131], [[{:|, [line: 131], [{:first, [line: 131], nil}, {:_, [line: 131], nil}]}], {:all_vertices, [line: 131], nil}]}], {:__block__, [], [{:=, [line: 132], [{:visited, [line: 132], nil}, {:depth_first_search, [line: 132], [{:vertex_map, [line: 132], nil}, {:edge_list, [line: 132], nil}, {:first, [line: 132], nil}, {{:., [line: 132], [{:__aliases__, [line: 132], [:MapSet]}, :new]}, [line: 132], []}]}]}, {:==, [line: 133], [{{:., [line: 133], [{:__aliases__, [line: 133], [:MapSet]}, :size]}, [line: 133], [{:visited, [line: 133], nil}]}, {:length, [line: 133], [{:all_vertices, [line: 133], nil}]}]}]}]}]]]}]}, {:->, [line: 137], [[{:case, [line: 137], [{:empty, [line: 137], []}]}], true]}]
13:13:58.640 [debug] Extracted fold cases: [{:->, [line: 126], [[{:case, [line: 126], [{:graph, [line: 126], [{:vertex_map, [line: 126], nil}, {:edge_list, [line: 126], nil}, {:metadata, [line: 126], nil}]}]}], {:case, [line: 127], [{{:., [line: 127], [{:__aliases__, [line: 127], [:Map]}, :keys]}, [line: 127], [{:vertex_map, [line: 127], nil}]}, [do: [{:->, [line: 128], [[[]], true]}, {:->, [line: 131], [[{:=, [line: 131], [[{:|, [line: 131], [{:first, [line: 131], nil}, {:_, [line: 131], nil}]}], {:all_vertices, [line: 131], nil}]}], {:__block__, [], [{:=, [line: 132], [{:visited, [line: 132], nil}, {:depth_first_search, [line: 132], [{:vertex_map, [line: 132], nil}, {:edge_list, [line: 132], nil}, {:first, [line: 132], nil}, {{:., [line: 132], [{:__aliases__, [line: 132], [:MapSet]}, :new]}, [line: 132], []}]}]}, {:==, [line: 133], [{{:., [line: 133], [{:__aliases__, [line: 133], [:MapSet]}, :size]}, [line: 133], [{:visited, [line: 133], nil}]}, {:length, [line: 133], [{:all_vertices, [line: 133], nil}]}]}]}]}]]]}]}, {:->, [line: 137], [[{:case, [line: 137], [{:empty, [line: 137], []}]}], true]}]
13:13:58.641 [debug] Generating fold cases: [{:->, [line: 126], [[{:case, [line: 126], [{:graph, [line: 126], [{:vertex_map, [line: 126], nil}, {:edge_list, [line: 126], nil}, {:metadata, [line: 126], nil}]}]}], {:case, [line: 127], [{{:., [line: 127], [{:__aliases__, [line: 127], [:Map]}, :keys]}, [line: 127], [{:vertex_map, [line: 127], nil}]}, [do: [{:->, [line: 128], [[[]], true]}, {:->, [line: 131], [[{:=, [line: 131], [[{:|, [line: 131], [{:first, [line: 131], nil}, {:_, [line: 131], nil}]}], {:all_vertices, [line: 131], nil}]}], {:__block__, [], [{:=, [line: 132], [{:visited, [line: 132], nil}, {:depth_first_search, [line: 132], [{:vertex_map, [line: 132], nil}, {:edge_list, [line: 132], nil}, {:first, [line: 132], nil}, {{:., [line: 132], [{:__aliases__, [line: 132], [:MapSet]}, :new]}, [line: 132], []}]}]}, {:==, [line: 133], [{{:., [line: 133], [{:__aliases__, [line: 133], [:MapSet]}, :size]}, [line: 133], [{:visited, [line: 133], nil}]}, {:length, [line: 133], [{:all_vertices, [line: 133], nil}]}]}]}]}]]]}]}, {:->, [line: 137], [[{:case, [line: 137], [{:empty, [line: 137], []}]}], true]}]
13:13:58.641 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.641 [debug] Transforming recursive refs:
Body: {:case, [line: 127], [{{:., [line: 127], [{:__aliases__, [line: 127], [:Map]}, :keys]}, [line: 127], [{:vertex_map, [line: 127], nil}]}, [do: [{:->, [line: 128], [[[]], true]}, {:->, [line: 131], [[{:=, [line: 131], [[{:|, [line: 131], [{:first, [line: 131], nil}, {:_, [line: 131], nil}]}], {:all_vertices, [line: 131], nil}]}], {:__block__, [], [{:=, [line: 132], [{:visited, [line: 132], nil}, {:depth_first_search, [line: 132], [{:vertex_map, [line: 132], nil}, {:edge_list, [line: 132], nil}, {:first, [line: 132], nil}, {{:., [line: 132], [{:__aliases__, [line: 132], [:MapSet]}, :new]}, [line: 132], []}]}]}, {:==, [line: 133], [{{:., [line: 133], [{:__aliases__, [line: 133], [:MapSet]}, :size]}, [line: 133], [{:visited, [line: 133], nil}]}, {:length, [line: 133], [{:all_vertices, [line: 133], nil}]}]}]}]}]]]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.641 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.641 [debug] Transforming recursive refs:
Body: true
Bindings: []
State: nil
13:13:58.641 [debug] Generated fold cases after transformation: [{:->, [line: 126], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:case, [line: 127], [{{:., [line: 127], [{:__aliases__, [line: 127], [:Map]}, :keys]}, [line: 127], [{:vertex_map, [line: 127], nil}]}, [do: [{:->, [line: 128], [[[]], true]}, {:->, [line: 131], [[{:=, [line: 131], [[{:|, [line: 131], [{:first, [line: 131], nil}, {:_, [line: 131], nil}]}], {:all_vertices, [line: 131], nil}]}], {:__block__, [], [{:=, [line: 132], [{:visited, [line: 132], nil}, {:depth_first_search, [line: 132], [{:vertex_map, [line: 132], nil}, {:edge_list, [line: 132], nil}, {:first, [line: 132], nil}, {{:., [line: 132], [{:__aliases__, [line: 132], [:MapSet]}, :new]}, [line: 132], []}]}]}, {:==, [line: 133], [{{:., [line: 133], [{:__aliases__, [line: 133], [:MapSet]}, :size]}, [line: 133], [{:visited, [line: 133], nil}]}, {:length, [line: 133], [{:all_vertices, [line: 133], nil}]}]}]}]}]]]}]}, {:->, [line: 137], [[{:%{}, [], [variant: :empty]}], true]}]
13:13:58.642 [debug] Final quoted expression: {:do_fold, [], [{:graph, [line: 125], nil}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 126], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:case, [line: 127], [{{:., [line: 127], [{:__aliases__, [line: 127], [:Map]}, :keys]}, [line: 127], [{:vertex_map, [line: 127], nil}]}, [do: [{:->, [line: 128], [[[]], true]}, {:->, [line: 131], [[{:=, [line: 131], [[{:|, [line: 131], [{:first, ...}, {...}]}], {:all_vertices, [line: 131], nil}]}], {:__block__, [], [{:=, [line: 132], [{:visited, [...], ...}, {:depth_first_search, ...}]}, {:==, [line: 133], [{{...}, ...}, {...}]}]}]}]]]}]}, {:->, [line: 137], [[{:%{}, [], [variant: :empty]}], true]}]]]}]}]}]}
warning: variable "metadata" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:125: PropGraph.is_connected?/1
warning: variable "state" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/prop_graph.ex:125: PropGraph.is_connected?/1
warning: variable "opts" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/graffiti/persistance.ex:64: Graffiti.Persistence.Worker.init/1
warning: variable "tx_id" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/graffiti/persistance.ex:76: Graffiti.Persistence.save_vertex/2
warning: variable "tx_id" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/graffiti/persistance.ex:86: Graffiti.Persistence.save_edge/2
13:13:58.693 [debug] Fold expression: {{:., [line: 154], [{:state, [line: 154], nil}, :graph]}, [no_parens: true, line: 154], []}, opts: [], cases: [{:->, [line: 155], [[{:case, [line: 155], [{:graph, [line: 155], [{:vertex_map, [line: 155], nil}, {:edge_list, [line: 155], nil}, {:metadata, [line: 155], nil}]}]}], {:__block__, [], [{{:., [line: 156], [{:__aliases__, [line: 156], [:Logger]}, :debug]}, [line: 156], ["Processing graph with:"]}, {{:., [line: 157], [{:__aliases__, [line: 157], [:Logger]}, :debug]}, [line: 157], [{:<<>>, [line: 157], [" vertex_map: ", {:"::", [line: 157], [{{:., [line: 157], [Kernel, :to_string]}, [line: 157], [{:inspect, [line: 157], [{:vertex_map, [line: 157], nil}]}]}, {:binary, [line: 157], nil}]}]}]}, {{:., [line: 158], [{:__aliases__, [line: 158], [:Logger]}, :debug]}, [line: 158], [{:<<>>, [line: 158], [" edge_list: ", {:"::", [line: 158], [{{:., [line: 158], [Kernel, :to_string]}, [line: 158], [{:inspect, [line: 158], [{:edge_list, [line: 158], nil}]}]}, {:binary, [line: 158], nil}]}]}]}, {:=, [line: 160], [{:edges, [line: 160], nil}, {:extract_edges, [line: 160], [{:edge_list, [line: 160], nil}]}]}, {{:., [line: 161], [{:__aliases__, [line: 161], [:Logger]}, :debug]}, [line: 161], [{:<<>>, [line: 161], ["Extracted edges: ", {:"::", [line: 161], [{{:., [line: 161], [Kernel, :to_string]}, [line: 161], [{:inspect, [line: 161], [{:edges, [line: 161], nil}]}]}, {:binary, [line: 161], nil}]}]}]}, {:=, [line: 163], [{:results, [line: 163], nil}, {:execute_query, [line: 163], [{:pattern, [line: 163], nil}, {:vertex_map, [line: 163], nil}, {:edges, [line: 163], nil}]}]}, {{:., [line: 164], [{:__aliases__, [line: 164], [:Logger]}, :debug]}, [line: 164], [{:<<>>, [line: 164], ["Query results: ", {:"::", [line: 164], [{{:., [line: 164], [Kernel, :to_string]}, [line: 164], [{:inspect, [line: 164], [{:results, [line: 164], nil}]}]}, {:binary, [line: 164], nil}]}]}]}, {:results, [line: 166], nil}]}]}, {:->, [line: 168], [[{:case, [line: 168], [{:empty, [line: 168], []}]}], {:__block__, [], [{{:., [line: 169], [{:__aliases__, [line: 169], [:Logger]}, :debug]}, [line: 169], ["Empty graph, returning empty results"]}, []]}]}]
13:13:58.693 [debug] Extracting cases from list: [{:->, [line: 155], [[{:case, [line: 155], [{:graph, [line: 155], [{:vertex_map, [line: 155], nil}, {:edge_list, [line: 155], nil}, {:metadata, [line: 155], nil}]}]}], {:__block__, [], [{{:., [line: 156], [{:__aliases__, [line: 156], [:Logger]}, :debug]}, [line: 156], ["Processing graph with:"]}, {{:., [line: 157], [{:__aliases__, [line: 157], [:Logger]}, :debug]}, [line: 157], [{:<<>>, [line: 157], [" vertex_map: ", {:"::", [line: 157], [{{:., [line: 157], [Kernel, :to_string]}, [line: 157], [{:inspect, [line: 157], [{:vertex_map, [line: 157], nil}]}]}, {:binary, [line: 157], nil}]}]}]}, {{:., [line: 158], [{:__aliases__, [line: 158], [:Logger]}, :debug]}, [line: 158], [{:<<>>, [line: 158], [" edge_list: ", {:"::", [line: 158], [{{:., [line: 158], [Kernel, :to_string]}, [line: 158], [{:inspect, [line: 158], [{:edge_list, [line: 158], nil}]}]}, {:binary, [line: 158], nil}]}]}]}, {:=, [line: 160], [{:edges, [line: 160], nil}, {:extract_edges, [line: 160], [{:edge_list, [line: 160], nil}]}]}, {{:., [line: 161], [{:__aliases__, [line: 161], [:Logger]}, :debug]}, [line: 161], [{:<<>>, [line: 161], ["Extracted edges: ", {:"::", [line: 161], [{{:., [line: 161], [Kernel, :to_string]}, [line: 161], [{:inspect, [line: 161], [{:edges, [line: 161], nil}]}]}, {:binary, [line: 161], nil}]}]}]}, {:=, [line: 163], [{:results, [line: 163], nil}, {:execute_query, [line: 163], [{:pattern, [line: 163], nil}, {:vertex_map, [line: 163], nil}, {:edges, [line: 163], nil}]}]}, {{:., [line: 164], [{:__aliases__, [line: 164], [:Logger]}, :debug]}, [line: 164], [{:<<>>, [line: 164], ["Query results: ", {:"::", [line: 164], [{{:., [line: 164], [Kernel, :to_string]}, [line: 164], [{:inspect, [line: 164], [{:results, [line: 164], nil}]}]}, {:binary, [line: 164], nil}]}]}]}, {:results, [line: 166], nil}]}]}, {:->, [line: 168], [[{:case, [line: 168], [{:empty, [line: 168], []}]}], {:__block__, [], [{{:., [line: 169], [{:__aliases__, [line: 169], [:Logger]}, :debug]}, [line: 169], ["Empty graph, returning empty results"]}, []]}]}]
13:13:58.694 [debug] Extracted fold cases: [{:->, [line: 155], [[{:case, [line: 155], [{:graph, [line: 155], [{:vertex_map, [line: 155], nil}, {:edge_list, [line: 155], nil}, {:metadata, [line: 155], nil}]}]}], {:__block__, [], [{{:., [line: 156], [{:__aliases__, [line: 156], [:Logger]}, :debug]}, [line: 156], ["Processing graph with:"]}, {{:., [line: 157], [{:__aliases__, [line: 157], [:Logger]}, :debug]}, [line: 157], [{:<<>>, [line: 157], [" vertex_map: ", {:"::", [line: 157], [{{:., [line: 157], [Kernel, :to_string]}, [line: 157], [{:inspect, [line: 157], [{:vertex_map, [line: 157], nil}]}]}, {:binary, [line: 157], nil}]}]}]}, {{:., [line: 158], [{:__aliases__, [line: 158], [:Logger]}, :debug]}, [line: 158], [{:<<>>, [line: 158], [" edge_list: ", {:"::", [line: 158], [{{:., [line: 158], [Kernel, :to_string]}, [line: 158], [{:inspect, [line: 158], [{:edge_list, [line: 158], nil}]}]}, {:binary, [line: 158], nil}]}]}]}, {:=, [line: 160], [{:edges, [line: 160], nil}, {:extract_edges, [line: 160], [{:edge_list, [line: 160], nil}]}]}, {{:., [line: 161], [{:__aliases__, [line: 161], [:Logger]}, :debug]}, [line: 161], [{:<<>>, [line: 161], ["Extracted edges: ", {:"::", [line: 161], [{{:., [line: 161], [Kernel, :to_string]}, [line: 161], [{:inspect, [line: 161], [{:edges, [line: 161], nil}]}]}, {:binary, [line: 161], nil}]}]}]}, {:=, [line: 163], [{:results, [line: 163], nil}, {:execute_query, [line: 163], [{:pattern, [line: 163], nil}, {:vertex_map, [line: 163], nil}, {:edges, [line: 163], nil}]}]}, {{:., [line: 164], [{:__aliases__, [line: 164], [:Logger]}, :debug]}, [line: 164], [{:<<>>, [line: 164], ["Query results: ", {:"::", [line: 164], [{{:., [line: 164], [Kernel, :to_string]}, [line: 164], [{:inspect, [line: 164], [{:results, [line: 164], nil}]}]}, {:binary, [line: 164], nil}]}]}]}, {:results, [line: 166], nil}]}]}, {:->, [line: 168], [[{:case, [line: 168], [{:empty, [line: 168], []}]}], {:__block__, [], [{{:., [line: 169], [{:__aliases__, [line: 169], [:Logger]}, :debug]}, [line: 169], ["Empty graph, returning empty results"]}, []]}]}]
13:13:58.694 [debug] Generating fold cases: [{:->, [line: 155], [[{:case, [line: 155], [{:graph, [line: 155], [{:vertex_map, [line: 155], nil}, {:edge_list, [line: 155], nil}, {:metadata, [line: 155], nil}]}]}], {:__block__, [], [{{:., [line: 156], [{:__aliases__, [line: 156], [:Logger]}, :debug]}, [line: 156], ["Processing graph with:"]}, {{:., [line: 157], [{:__aliases__, [line: 157], [:Logger]}, :debug]}, [line: 157], [{:<<>>, [line: 157], [" vertex_map: ", {:"::", [line: 157], [{{:., [line: 157], [Kernel, :to_string]}, [line: 157], [{:inspect, [line: 157], [{:vertex_map, [line: 157], nil}]}]}, {:binary, [line: 157], nil}]}]}]}, {{:., [line: 158], [{:__aliases__, [line: 158], [:Logger]}, :debug]}, [line: 158], [{:<<>>, [line: 158], [" edge_list: ", {:"::", [line: 158], [{{:., [line: 158], [Kernel, :to_string]}, [line: 158], [{:inspect, [line: 158], [{:edge_list, [line: 158], nil}]}]}, {:binary, [line: 158], nil}]}]}]}, {:=, [line: 160], [{:edges, [line: 160], nil}, {:extract_edges, [line: 160], [{:edge_list, [line: 160], nil}]}]}, {{:., [line: 161], [{:__aliases__, [line: 161], [:Logger]}, :debug]}, [line: 161], [{:<<>>, [line: 161], ["Extracted edges: ", {:"::", [line: 161], [{{:., [line: 161], [Kernel, :to_string]}, [line: 161], [{:inspect, [line: 161], [{:edges, [line: 161], nil}]}]}, {:binary, [line: 161], nil}]}]}]}, {:=, [line: 163], [{:results, [line: 163], nil}, {:execute_query, [line: 163], [{:pattern, [line: 163], nil}, {:vertex_map, [line: 163], nil}, {:edges, [line: 163], nil}]}]}, {{:., [line: 164], [{:__aliases__, [line: 164], [:Logger]}, :debug]}, [line: 164], [{:<<>>, [line: 164], ["Query results: ", {:"::", [line: 164], [{{:., [line: 164], [Kernel, :to_string]}, [line: 164], [{:inspect, [line: 164], [{:results, [line: 164], nil}]}]}, {:binary, [line: 164], nil}]}]}]}, {:results, [line: 166], nil}]}]}, {:->, [line: 168], [[{:case, [line: 168], [{:empty, [line: 168], []}]}], {:__block__, [], [{{:., [line: 169], [{:__aliases__, [line: 169], [:Logger]}, :debug]}, [line: 169], ["Empty graph, returning empty results"]}, []]}]}]
13:13:58.694 [debug] Generated pattern: {:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]} for variant: :graph
13:13:58.694 [debug] Transforming recursive refs:
Body: {:__block__, [], [{{:., [line: 156], [{:__aliases__, [line: 156], [:Logger]}, :debug]}, [line: 156], ["Processing graph with:"]}, {{:., [line: 157], [{:__aliases__, [line: 157], [:Logger]}, :debug]}, [line: 157], [{:<<>>, [line: 157], [" vertex_map: ", {:"::", [line: 157], [{{:., [line: 157], [Kernel, :to_string]}, [line: 157], [{:inspect, [line: 157], [{:vertex_map, [line: 157], nil}]}]}, {:binary, [line: 157], nil}]}]}]}, {{:., [line: 158], [{:__aliases__, [line: 158], [:Logger]}, :debug]}, [line: 158], [{:<<>>, [line: 158], [" edge_list: ", {:"::", [line: 158], [{{:., [line: 158], [Kernel, :to_string]}, [line: 158], [{:inspect, [line: 158], [{:edge_list, [line: 158], nil}]}]}, {:binary, [line: 158], nil}]}]}]}, {:=, [line: 160], [{:edges, [line: 160], nil}, {:extract_edges, [line: 160], [{:edge_list, [line: 160], nil}]}]}, {{:., [line: 161], [{:__aliases__, [line: 161], [:Logger]}, :debug]}, [line: 161], [{:<<>>, [line: 161], ["Extracted edges: ", {:"::", [line: 161], [{{:., [line: 161], [Kernel, :to_string]}, [line: 161], [{:inspect, [line: 161], [{:edges, [line: 161], nil}]}]}, {:binary, [line: 161], nil}]}]}]}, {:=, [line: 163], [{:results, [line: 163], nil}, {:execute_query, [line: 163], [{:pattern, [line: 163], nil}, {:vertex_map, [line: 163], nil}, {:edges, [line: 163], nil}]}]}, {{:., [line: 164], [{:__aliases__, [line: 164], [:Logger]}, :debug]}, [line: 164], [{:<<>>, [line: 164], ["Query results: ", {:"::", [line: 164], [{{:., [line: 164], [Kernel, :to_string]}, [line: 164], [{:inspect, [line: 164], [{:results, [line: 164], nil}]}]}, {:binary, [line: 164], nil}]}]}]}, {:results, [line: 166], nil}]}
Bindings: [vertex_map: true, edge_list: true, metadata: true]
State: nil
13:13:58.694 [debug] Generated pattern: {:%{}, [], [variant: :empty]} for variant: :empty
13:13:58.694 [debug] Transforming recursive refs:
Body: {:__block__, [], [{{:., [line: 169], [{:__aliases__, [line: 169], [:Logger]}, :debug]}, [line: 169], ["Empty graph, returning empty results"]}, []]}
Bindings: []
State: nil
13:13:58.694 [debug] Generated fold cases after transformation: [{:->, [line: 155], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{{:., [line: 156], [{:__aliases__, [line: 156], [:Logger]}, :debug]}, [line: 156], ["Processing graph with:"]}, {{:., [line: 157], [{:__aliases__, [line: 157], [:Logger]}, :debug]}, [line: 157], [{:<<>>, [line: 157], [" vertex_map: ", {:"::", [line: 157], [{{:., [line: 157], [Kernel, :to_string]}, [line: 157], [{:inspect, [line: 157], [{:vertex_map, [line: 157], nil}]}]}, {:binary, [line: 157], nil}]}]}]}, {{:., [line: 158], [{:__aliases__, [line: 158], [:Logger]}, :debug]}, [line: 158], [{:<<>>, [line: 158], [" edge_list: ", {:"::", [line: 158], [{{:., [line: 158], [Kernel, :to_string]}, [line: 158], [{:inspect, [line: 158], [{:edge_list, [line: 158], nil}]}]}, {:binary, [line: 158], nil}]}]}]}, {:=, [line: 160], [{:edges, [line: 160], nil}, {:extract_edges, [line: 160], [{:edge_list, [line: 160], nil}]}]}, {{:., [line: 161], [{:__aliases__, [line: 161], [:Logger]}, :debug]}, [line: 161], [{:<<>>, [line: 161], ["Extracted edges: ", {:"::", [line: 161], [{{:., [line: 161], [Kernel, :to_string]}, [line: 161], [{:inspect, [line: 161], [{:edges, [line: 161], nil}]}]}, {:binary, [line: 161], nil}]}]}]}, {:=, [line: 163], [{:results, [line: 163], nil}, {:execute_query, [line: 163], [{:pattern, [line: 163], nil}, {:vertex_map, [line: 163], nil}, {:edges, [line: 163], nil}]}]}, {{:., [line: 164], [{:__aliases__, [line: 164], [:Logger]}, :debug]}, [line: 164], [{:<<>>, [line: 164], ["Query results: ", {:"::", [line: 164], [{{:., [line: 164], [Kernel, :to_string]}, [line: 164], [{:inspect, [line: 164], [{:results, [line: 164], nil}]}]}, {:binary, [line: 164], nil}]}]}]}, {:results, [line: 166], nil}]}]}, {:->, [line: 168], [[{:%{}, [], [variant: :empty]}], {:__block__, [], [{{:., [line: 169], [{:__aliases__, [line: 169], [:Logger]}, :debug]}, [line: 169], ["Empty graph, returning empty results"]}, []]}]}]
13:13:58.695 [debug] Final quoted expression: {:do_fold, [], [{{:., [line: 154], [{:state, [line: 154], nil}, :graph]}, [no_parens: true, line: 154], []}, nil, {:fn, [], [{:->, [], [[{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, {:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:state, [], BenBen}]}], {:case, [], [{:var!, [context: BenBen, imports: [{1, Kernel}, {2, Kernel}]], [{:value, [], BenBen}]}, [do: [{:->, [line: 155], [[{:%{}, [], [variant: :graph, vertex_map: {:vertex_map, [], nil}, edge_list: {:edge_list, [], nil}, metadata: {:metadata, [], nil}]}], {:__block__, [], [{{:., [line: 156], [{:__aliases__, [line: 156], [:Logger]}, :debug]}, [line: 156], ["Processing graph with:"]}, {{:., [line: 157], [{:__aliases__, [line: 157], [:Logger]}, :debug]}, [line: 157], [{:<<>>, [line: 157], [" vertex_map: ", {:"::", [line: 157], [{{:., [line: 157], [Kernel, ...]}, [line: 157], [{:inspect, ...}]}, {:binary, [line: 157], nil}]}]}]}, {{:., [line: 158], [{:__aliases__, [line: 158], [:Logger]}, :debug]}, [line: 158], [{:<<>>, [line: 158], [" edge_list: ", {:"::", [line: 158], [{{:., [line: 158], [...]}, [line: 158], [{...}]}, {:binary, [line: 158], nil}]}]}]}, {:=, [line: 160], [{:edges, [line: 160], nil}, {:extract_edges, [line: 160], [{:edge_list, [line: 160], nil}]}]}, {{:., [line: 161], [{:__aliases__, [line: 161], [:Logger]}, :debug]}, [line: 161], [{:<<>>, [line: 161], ["Extracted edges: ", {:"::", [line: 161], [{{:., ...}, [...], ...}, {:binary, ...}]}]}]}, {:=, [line: 163], [{:results, [line: 163], nil}, {:execute_query, [line: 163], [{:pattern, [line: 163], nil}, {:vertex_map, [line: 163], nil}, {:edges, [line: 163], nil}]}]}, {{:., [line: 164], [{:__aliases__, [line: 164], [:Logger]}, :debug]}, [line: 164], [{:<<>>, [line: 164], ["Query results: ", {:"::", [line: 164], [{...}, ...]}]}]}, {:results, [line: 166], nil}]}]}, {:->, [line: 168], [[{:%{}, [], [variant: :empty]}], {:__block__, [], [{{:., [line: 169], [{:__aliases__, [line: 169], [:Logger]}, :debug]}, [line: 169], ["Empty graph, returning empty results"]}, []]}]}]]]}]}]}]}
warning: variable "metadata" is unused (if the variable is not meant to be used, prefix it with an underscore)
lib/examples/graffiti.ex:154: Graffiti.query/2
warning: variable "state" is unused (there is a variable with the same name in the context, use the pin operator (^) to match on it or prefix this variable with underscore if it is not meant to be used)
lib/examples/graffiti.ex:154: Graffiti.query/2
warning: Graph.add_edge/5 is undefined (module Graph is not available or is yet to be defined)
lib/examples/graffiti.ex:269: Graffiti.apply_operations/2
warning: Graph.add_vertex/3 is undefined (module Graph is not available or is yet to be defined)
lib/examples/graffiti.ex:258: Graffiti.apply_operations/2
Generated graphrenia app
Excluding tags: [:skip]
13:13:58.988 [debug] do_fold called with data: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}
13:13:58.988 [debug] do_fold called with data: %{variant: :empty}, variant_type: :empty, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{variant: :empty}
13:13:58.988 [debug] Recursive field result for edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}
13:13:58.988 [debug] do_fold called with data: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}
13:13:58.988 [debug] do_fold called with data: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}
13:13:58.988 [debug] do_fold called with data: %{variant: :empty}, variant_type: :empty, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{variant: :empty}
13:13:58.988 [debug] Recursive field result for edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
13:13:58.988 [debug] Recursive field result for edge_list: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
13:13:58.988 [debug] do_fold called with data: %{edge_list: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
13:13:58.988 [debug] do_fold called with data: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
13:13:58.988 [debug] do_fold called with data: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
13:13:58.988 [debug] do_fold called with data: %{variant: :empty}, variant_type: :empty, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{variant: :empty}
13:13:58.988 [debug] Recursive field result for edge_list: %{edge_list: %{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}
13:13:58.988 [debug] Recursive field result for edge_list: %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: %{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
13:13:58.988 [debug] Recursive field result for edge_list: %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: %{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
13:13:58.988 [debug] do_fold called with data: %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: %{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: [%{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, %{edge_list: %{edge_props: %{}, edge_weight: 5, source_id: 1, target_id: 2, variant: :edge}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}], metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}, 2 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 2}}}
.13:13:58.988 [debug] do_fold called with data: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}, variant_type: :graph, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{}}
13:13:58.988 [debug] do_fold called with data: %{variant: :empty}, variant_type: :empty, state: nil
13:13:58.988 [debug] Processing recursive fields of: %{variant: :empty}
13:13:58.989 [debug] Recursive field result for edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}
13:13:58.989 [debug] do_fold called with data: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, variant_type: :graph, state: nil
13:13:58.989 [debug] Processing recursive fields of: %{edge_list: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}
13:13:58.989 [debug] do_fold called with data: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}, variant_type: :graph, state: nil
13:13:58.989 [debug] Processing recursive fields of: %{edge_list: %{variant: :empty}, metadata: %{type: :directed}, variant: :graph, vertex_map: %{1 => %{adjacency: %{variant: :empty}, properties: %{}, variant: :vertex, vertex_id: 1}}}