• [^] # Re: Scala-func

    Posté par (site web personnel) . En réponse au journal Un autre taptempo en Scala. Évalué à 3. Dernière modification le 28 juillet 2018 à 11:59.

    En effet, j'ai rajouté refined en cours de route et j'ai oublié que l'original ne rejetait pas les arguments invalides, et voilà donc une autre différence.

    Techniquement je renvoie une exception dans mon code, ce qui est assez moche pour du Scala idiomatique, mais c'est comme ça que scopt fonctionne (sans doute parce que le parsing des types primitifs Java lève des exceptions). Elle est catch par scopt qui renvoie un Left[Seq[String], _] pour cet argument, les erreurs collectées (en gros le message de mon exception) sont affichées sur la sortie standard puis scopt renvoie None puisqu'il n'a pas réussi à construire une instance de ma classe Args, du coup la grosse for comprehension qui constitue STapTempo.pureapp ne fait rien du tout (donc le programme termine immédiatement).