Cider: [DEMANDE DE FONCTIONNEMENT] Écrivez le code en utilisant `Object.method` et convertissez-le en `.method Object`

Créé le 17 avr. 2018  ·  6Commentaires  ·  Source: clojure-emacs/cider

Écrivez le code en utilisant Object.method , et convertissez-le en .method Object . Il doit également de préférence n'afficher que les méthodes de l'objet pour l'auto-complétion. Cursive prend également en charge cette fonctionnalité.

Commentaire le plus utile

l'idée est que vous pourriez écrire thing.method().function() et le cidre pourrait réécrire comme (.function (.method thing)) ou l'équivalent.

l'avantage est que vous pouvez obtenir une bonne saisie semi-automatique sur l'appel de fonction, puis le laisser être inversé dans l'appel d'interopérabilité correct

Tous les 6 commentaires

Je ne suis pas tout à fait - vous ne pouvez pas vraiment écrire object.method en Clojure.

l'idée est que vous pourriez écrire thing.method().function() et le cidre pourrait réécrire comme (.function (.method thing)) ou l'équivalent.

l'avantage est que vous pouvez obtenir une bonne saisie semi-automatique sur l'appel de fonction, puis le laisser être inversé dans l'appel d'interopérabilité correct

Je vois. La transformation elle-même n'est pas difficile à faire et ne nécessite même pas de CIDER. Peut-être qu'il y a déjà quelque chose comme ça dans clj-refactor ? //cc @benedekfazekas

l'avantage est que vous pouvez obtenir une bonne saisie semi-automatique sur l'appel de fonction, puis le laisser être inversé dans l'appel d'interopérabilité correct

Comment obtiendriez-vous de meilleurs candidats à l'achèvement de cette façon ? Sans analyse statique, ils seraient les mêmes dans les deux cas.

Il n'y a rien de tel dans cljr et je serais réticent à l'ajouter. Écrire un peu de Java directement dans la source clojure ne me semble pas bien et je n'y vois pas beaucoup d'avantages.

Je ferme ce ticket en raison d'aucune activité récente. N'hésitez pas à le rouvrir si jamais vous y revenez.

J'ai trouvé qu'il y avait un fil de discussion sur la liste de diffusion clojure, le sujet du fil de discussion est "Code prototype pour la complétion de code CIDER améliorée pour les méthodes Java".
Je ne connais pas les méthodes statiques Java, alors utiliser cet interop Java (.method Obj) est vraiment difficile pour moi.

Cette page vous a été utile?
0 / 5 - 0 notes