articles/dicorebol-fr/in.txt · Dernière modification: 07/05/2005 00:20

EN: rebol.com - rebol.org - rebol.net -
FR: Rebol Documentation Project - forum RebelBB - rebol-france.org - forum codeur -

 

In - Détail de la fonction

En résumé :

Retourne le mot dans le contexte de l’objet.

Utilisation :

in object word

Arguments :

object - L’argument object.(type: object! port!)

word - L’argument mot. (type: any-word)

Description :

Retourne le mot à l’intérieur d’un autre contexte. Cette fonction est normalement utilisée avec SET et GET.

    set-console: func ['word value] [
        set in system/console word value
    ]
    set-console prompt "==>"
    set-console result "-->"

C’est une fonction très utile pour accèder aux mots et aux valeurs d’un object. La fonction IN extraira un mot du contexte d’un objet. Par example, si vous créez un objet:

    example: make object! [ name: "fred" age: 24 ]

Vous pouvez accèder aux champs nom et d’âge d’un objet avec :

    print example/name
    print example/age
    fred
    24

Mais vous pouvez aussi y accèder avec :

    print get in example 'name
    print get in example 'age
    fred
    24

La fonction IN retourne les mots “NAME” et “AGE’ tels qu’ils sont à l’intérieur de l’objet ”example“. Si vous tapez :

    print in example 'name
    name

Le résultat sera le mot ”NAME“, mais en tant que valeur dans l’objet ”example". La fonction GET va alors extraire leurs valeurs. C’est la meilleure façon pour obtenir une valeur provenant d’un objet, sans considération de son type de données (comme dans le cas d’une fonction).

Le mot SET peut aussi être utilisé :

    print set in example 'name "Bob"
    Bob

L’utilisation du mot IN, est ici une façon d’imprimer la valeur de tous les champs d’un objet :

 
    foreach word next first example [
        probe get in example word
    ]
    "Bob"
    24

Le mot FIRST retourne la liste des mots d’un objet. Le mot NEXT évite le premier mot, qui est SELF , l’objet en lui-même.

Voici un autre example qui affecte NONE à les valeurs d’un objet :

    foreach word next first example [
        set in example word none
    ]

La fonction IN peut aussi être utilisé pour vérifier rapidement l’existence d’un mot à l’intérieur d’un objet:

    if in example 'name [print example/name]
    none
    if in example 'address [print example/address]

C’est très utile pour les objets qui ont des variables optionnelles.

Fonctions en relation :

get - Extrait la valeur d’un mot.

set - Affecte une (des) valeur(s) spécifiée(s) à un mot ou un bloc de mots.

 
  articles/dicorebol-fr/in.txt · Dernière modification: 07/05/2005 00:20
 
Fil RSS: Recent changes RSS feed
Valid XHTML 1.0 Valid CSS Powered by PHP Driven by DokuWiki
Hébergement par Spinodo