Comment puis-je afficher toutes les méthodes disponibles sur un objet dans Ruby. J'utilise l'IDE APTANA lorsque je tapez le fichier. Aucune méthode n'est affichée. Je viens d'un fond éclipse / java. P>
merci p>
5 Réponses :
Vous pouvez appeler fichier.methods code> dans l'interprète Ruby interactif pour voir toutes les méthodes disponibles. Je ne sais pas s'il y a un moyen dans l'IDE que vous utilisez, car je ne l'ai pas utilisé auparavant. P>
Il existe plusieurs méthodes: update strong> p> Pour obtenir les méthodes d'objet à part toutes les méthodes héritées que vous pouvez faire: p>
obj.methods (faux) p> li>
comme tempus mentionné dans les commentaires, la commande suivante est très utile pour obtenir les méthodes d'objet actuelles à partir de l'objet (classe de base) Méthodes héritées: P>
obj.methods - objet.methods p> li>
ol> p>
Je trouve obj.methods - objet.methods code> utile.
Je viens de comprendre met obj.methods code> pour les énumérer sur des lignes distinctes
élaborer sur le point de Tempus, c'est bien si vous utilisez un objet tiers (d'un joyau ou quelque chose) et que vous faites obj_instance.methods - obj_instance.class.methods code> pour savoir ce que cette instance répond à
Si vous avez un interprète rubis exécutant,
fichier. Code> rien ne s'est passé jusqu'à ce que je fasse une commande de contenu (CTRL + espace). À ce stade, j'ai reçu une liste de méthodes. P>
Merci. Ctrl Space fonctionne pour moi. Malheureusement, il ne semble pas y avoir de documentation associée aux méthodes? Tout ce que je vois, ce sont leurs noms et paramattres à adopter. Est-ce une faiblesse de l'IDE Ruby?
Je reçois une documentation sur les méthodes kernales. Il peut être lié à Ruby Docs présents ou non
Vous pouvez passer ou, si vous voulez seulement supprimer le plus courant. méthodes définies dans la classe code> objet code>, vous souhaitez appendre true code> aux méthodes si vous souhaitez ignorer les méthodes définies dans les superclasses:
- objet.methods code> ou
- objet.instance_methods code>, selon que
Obj code> est une classe ou une instance d'une classe. P> p>
Je remarquerais également que obj.methods code> ne renvoie pas les noms de méthode triés, de sorte que vous souhaitiez faire
obj.methods.sort code>. p>.