J'ai écrit un module Erlang où toutes les fonctions internes ne sont pas directement appelées. Au lieu de cela, il y a un couple fonctionne qui ressemblent à ceci:Suppression des avertissements "fonction inutilisée" d'Erlang
weird_func(Cmd, Args) ->
?MODULE:Cmd(Args).
Il est un exemple simplifié, mais vous voyez l'idée. Le compilateur Erlang crache des avertissements sur les fonctions inutilisées, alors qu'en fait elles sont réellement utilisées, mais pas directement. Y a-t-il un moyen de supprimer ces avertissements? Idéalement, je ne veux pas supprimer tous ces avertissements, mais je voudrais plutôt dire au compilateur Erlang de considérer quelques fonctions spécifiques comme des cas spéciaux.
appel d'une fonction de cette façon ne fonctionnera que si elle a été exportée. Vous êtes en train de lui faire un appel "externe" même si vous utilisez '? MODULE', qui est seulement une macro prédéfinie qui se développe dans le nom du module, et qui passe le nom de la fonction en argument. N.B. ce 'Args' sera une liste des arguments et la fonction appelée n'aura qu'un seul argument. – rvirding