peau ou caret), c'est à dire:
* Comment peut-on retourner une valeur d'un block ou d'une méthode?
* Quelles sont les valeurs de retour par défaut?
Il y a 4 cas à considérer:
* Une m... ilise pas le chapeau pour faire un return.
===== Retourner une valeur depuis une méthode =====
<code smalltalk>
Number>>squared
"Retourne le receveur multiplié par lui même."
^ self *
nt l'exécution de l' expression ci-dessus ne nous retourne que la valeur 2. Alors pourquoi est-ce qu'on ob... e dans la classe "Set", on voit que cette méthode retourne son paramètre.
Dans l'expression "Set new add... n envoie le message "add: 2"
* La méthode add:2 retourne son paramètre, c'est-à-dire 2.
Avec l'express... ussi bien être vide, et ne faire rien du tout que retourner son receveur.
Cette méthode, a priori, ne fai
today à l'objet Date qui est une classe, et ça me retourne la date du jour.
Voici trois autres exemples:... rgument une URL, l'url d'un fichier png, et ça me retourne le fichier png téléchargé.
<code smalltalk>
Zn... thValue:''** dans la classe **''Counter''**, pour retourner un nouveau compteur avec en valeur initiale la... e smalltalk>
Counter withValue: 10
</code>
nous retourne un nouvel objet compteur qui commencerait à la
rial|PostgreSQL Tutorial]]
L'instruction SELECT retourne tous les enregistrements d'une ou plusieurs col... ilise "condition" pour filter les enregistrements retournés par SELECT.
* "condition" est une expression... **true**, **false** ou **unknow**.
* La requête retourne seulement les enregistrement qui statisfont la ... de la clause WHERE. Autrement dit, la requête ne retourne que les enregistrements pour lesquels "conditio
keries'' liste les boulangeries, ''bakeries/123'' retourne une boulangerie particulière, ''bakeries/123/pastries'' retourne les viennoiseries de la boulangerie 123. Par contre, ''bakeries/icecream'' ne retourne rien de valide dans notre cas.
++++
**Si vous voulez que votre API retourne la liste des viennoiseries de votre boulangerie
n SELECT qui contraint le nombre d'enregistrement retournés par la requête.
<code sql>
SELECT
select_li... ression
LIMIT
row_count;
</code>
L'instruction retourne "row_count" enregistrements générés par la requ... te. Si la valeur de "row_count" est 0, l'ensemble retourné est vide. Si la valeur de "row_count" est ''NULL'', la requête retourne le même résultat que sans la clause LIMIT.
Pou
r. Et enfin, on a le chapeau qui est utilisé pour retourner une valeur et quitter la méthode. Alors concernant le retour, par défaut, en Pharo, toutes les méthodes retournent self donc l'objet en cours. Donc, le code qui est a... de private, etc. Par défaut, toutes les méthodes retournent le receveur, c'est-à-dire self et on peut uti
>
Si on exécute cette expression, on voit qu'elle retourne bien une erreur.
Si on encapsule cette express... en, donc je n'ai pas d'erreur.
Le block nous est retourné, parce qu'en fait la définition d'un block n'ex... contient une erreur, évidemment l'erreur va être retournée au moment de l'évaluation du bloc.
C'est le c... age value au bloc et on a bien une erreur qui est retournée.
Les blocs en fait peuvent aussi avoir des ar
edCOllection at: 2
"> 'hates' "
</code>
Le code retourne ''**'hates'**'' la même chose.
Les collections... est bien ajouté à la fin de la collection (valeur retournée ligne 18).
J'ai des méthodes de conversion en... un Set dans lequel les doublons ont été retirés (retour ligne 4).
Ou alors je peux accéder à la version ... e>
Et puis si je demande à une association de me retourner sa valeur ça ne me retourne que la valeur.
C'
block va créer une collection qui sera finalement retournée par la méthode. On verra l'utilisation de cett... est envoyer le message next (ligne 6) qui va nous retourner l'élément juste après la position courante.
D... t 0 donc on se situe au début du stream, ''next'' retourne au début le premier élément, c'est-à-dire le ca... ge ''upTo:'' et un élément (ligne 14). La méthode retourne tous les éléments entre la position courante et
. La méthode ''area'' est trouvée ici et elle est retournée. L'algorithme de Lookup a fini son travail une... qui s'appellerait ''color''. Il la trouve, il la retourne.
Si maintenant on envoie le message ''area'' à... uper classe. Il la trouve, l'algorithme de Lookup retourne cette méthode.
===== self =====
**''self'' re... sein de ''B'', il l'exécute, et on obtient 50 en retour.
Le même message ''foo'' est résolu différemment
mment. la méthode ''bar'' est exécutée et ''foo'' retourne 10.
<code smalltalk>
B new bar
"> 20"
</code>
... r.
Il faut maintenant que je calcule la somme de retours de ''super bar''et de ''self foo''.
* ''self f... 'est celui qui est dans la classe A. ''self foo'' retourne 10.
* ''super bar'' : ''super'' désigne égale... et c'est cette méthode-là qui est exécutée, elle retourne 10.
Au final la méthode ''B>>bar'' retournera
doublons existent déjà dans la table, PostgreSQL retournera une erreur lors de la tentative d’ajout de la... table enfant, PostgreSQL refusera l'opération et retournera une erreur d'intégrité référentielle, à moins... DER BY film_id;
-- Plusieurs enregistrement sont retournés, on choisit arbitrairement le premier
-- film_... ocation de film, il faut s’assurer que la date de retour soit toujours postérieure à la date de location.
i cette sous-chaîne est contenue dans ''s'', elle retourne "vrai".
La fonction ''HasPrefix(s, prefix)'' ... x(s, substr)'' recherche ''substr'' dans ''s'' et retourne la position de la première instance de sous-cha... u. Ce sont donc toutes des chaînes. ''Replace()'' retourne une nouvelle chaîne. Donc, la chaîne d'origine ... pas réellement modifiée, une nouvelle chaîne est retournée avec les remplacements souhaités.
Les fonctio
round, first_name.capitalize(), 70, 50)
# retournes plusieurs chaines sans couper au milieu des mo... , text, (255, 255, 255), font=font)
# On retourne la largeur et la hauteur
return(w, h)
... round, first_name.capitalize(), 70, 50)
# retournes plusieurs chaines sans couper au milieu des mo... , text, (255, 255, 255), font=font)
# On retourne la largeur et la hauteur
return(w, h)