@@ -437,31 +437,58 @@ extension PrettyPrinter {
437
437
break
438
438
439
439
case . intersection( let first, let second) :
440
- printAsPattern ( first)
440
+ if wrap, first. isSimplePrint {
441
+ indent ( )
442
+ output ( " One( " )
443
+ }
444
+
445
+ printAsPattern ( first, wrap: false )
441
446
printIndented { printer in
442
447
printer. indent ( )
443
448
printer. output ( " .intersection( " )
444
- printer. printAsPattern ( second, terminateLine: false )
449
+ printer. printAsPattern ( second, wrap : false , terminateLine: false )
445
450
printer. output ( " ) " )
446
451
}
447
452
453
+ if wrap, first. isSimplePrint {
454
+ output ( " ) " )
455
+ }
456
+
448
457
case . subtraction( let first, let second) :
449
- printAsPattern ( first)
458
+ if wrap, first. isSimplePrint {
459
+ indent ( )
460
+ output ( " One( " )
461
+ }
462
+
463
+ printAsPattern ( first, wrap: false )
450
464
printIndented { printer in
451
465
printer. indent ( )
452
466
printer. output ( " .subtracting( " )
453
- printer. printAsPattern ( second, terminateLine: false )
467
+ printer. printAsPattern ( second, wrap : false , terminateLine: false )
454
468
printer. output ( " ) " )
455
469
}
456
470
471
+ if wrap, first. isSimplePrint {
472
+ output ( " ) " )
473
+ }
474
+
457
475
case . symmetricDifference( let first, let second) :
458
- printAsPattern ( first)
476
+ if wrap, first. isSimplePrint {
477
+ indent ( )
478
+ output ( " One( " )
479
+ }
480
+
481
+ printAsPattern ( first, wrap: false )
459
482
printIndented { printer in
460
483
printer. indent ( )
461
484
printer. output ( " .symmetricDifference( " )
462
- printer. printAsPattern ( second, terminateLine: false )
485
+ printer. printAsPattern ( second, wrap : false , terminateLine: false )
463
486
printer. output ( " ) " )
464
487
}
488
+
489
+ if wrap, first. isSimplePrint {
490
+ output ( " ) " )
491
+ }
465
492
}
466
493
}
467
494
0 commit comments