makeEditor ::
    Monad m =>
    Sugar.Body (Name m) m (ExprGuiT.SugarExpr m) ->
    Sugar.Payload m ExprGuiT.Payload ->
    ExprGuiM m (ExpressionGui m)
makeEditor body =
    case body of
    Sugar.BodyHole         x -> x & HoleEdit.make
    Sugar.BodyApply        x -> x & ApplyEdit.make
    Sugar.BodyLam          x -> x & LambdaEdit.make
    Sugar.BodyLiteral      x -> x & LiteralEdit.make
    Sugar.BodyRecord       x -> x & RecordEdit.make
    Sugar.BodyCase         x -> x & CaseEdit.make
    Sugar.BodyGetField     x -> x & GetFieldEdit.make
    Sugar.BodyInject       x -> x & InjectEdit.make
    Sugar.BodyGetVar       x -> x & GetVarEdit.make
    Sugar.BodyToNom        x -> x & NomEdit.makeToNom
    Sugar.BodyFromNom      x -> x & NomEdit.makeFromNom
makeEditor ::
    Monad m =>
    Sugar.Body (Name m) m (ExprGuiT.SugarExpr m) ->
    Sugar.Payload m ExprGuiT.Payload ->
    ExprGuiM m (ExpressionGui m)
makeEditor body =
    case body of
    Sugar.BodyHole         x -> x & HoleEdit.make
    Sugar.BodyApply        x -> x & ApplyEdit.make
    Sugar.BodyLam          x -> x & LambdaEdit.make
    Sugar.BodyLiteral      x -> x & LiteralEdit.make
    Sugar.BodyRecord       x -> x & RecordEdit.make
    Sugar.BodyCase         x -> x & CaseEdit.make
    Sugar.BodyGetField     x -> x & GetFieldEdit.make
    Sugar.BodyInject       x -> x & InjectEdit.make
    Sugar.BodyGetVar       x -> x & GetVarEdit.make
    Sugar.BodyToNom        x -> x & NomEdit.makeToNom
    Sugar.BodyFromNom      x -> x & NomEdit.makeFromNom
makeEditor body =
    case body of
    Sugar.BodyHole         x -> x & HoleEdit.make
    Sugar.BodyApply        x -> x & ApplyEdit.make
    Sugar.BodyLam          x -> x & LambdaEdit.make
    Sugar.BodyLiteral      x -> x & LiteralEdit.make
    Sugar.BodyRecord       x -> x & RecordEdit.make
    Sugar.BodyCase         x -> x & CaseEdit.make
    Sugar.BodyGetField     x -> x & GetFieldEdit.make
    Sugar.BodyInject       x -> x & InjectEdit.make
    Sugar.BodyGetVar       x -> x & GetVarEdit.make
    Sugar.BodyToNom        x -> x & NomEdit.makeToNom
    Sugar.BodyFromNom      x -> x & NomEdit.makeFromNom