Skip to content

[Chore] Clean-up Buildable ExecutorOp implementation

Nikolay Yakimov requested to merge lierdakil/chore-prettier-operation into master

Context: got distracted by this while working on !1351 (merged), but by the time I was finishing up, that MR already was reviewed, so I've opted to split this off.

Description

Problem: Buildable ExecutorOp instance includes not only the logic for ExecutorOp, but also for *Operation. This seems wrong from the separation of concerns standpoint, plus it's harder to test.

Solution: Add Buildable instances for individual *Operation types, add doctests, tweak the instances to produce good results. Make Buildable ExecutorOp delegate to these instances.

This also adds quoteF to Fmt for minor convenience.

Related issue(s)

Resolves None

Checklist for your Merge Request

Related changes (conditional)

  • Tests (see short guidelines)

    • If I added new functionality, I added tests covering it.
    • If I fixed a bug, I added a regression test to prevent the bug from silently reappearing again.
  • Documentation

    • I checked whether I should update the docs and did so if necessary:
    • I updated changelog files of all affected packages released to Hackage if my changes are externally visible.

Stylistic guide (mandatory)

Merge request reports