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

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

 

Construct - Détail de la fonction

En résumé :

Crée un objet, mais sans évaluer sa spécification.

Utilisation :

construct block

Arguments:

block - Spécification d’objet en bloc. (type: block!)

Raffinement :

/with - Fournit un objet de base par défaut.

object - L’objet passé en argument. (type: object!)

Description :

Cette fonction crée un nouvel objet mais sans évaluer les spécifications de l’objet (comme c’est fait avec les fonctions MAKE et CONTEXT).

Quand vous utilisez la fonction CONSTRUCT sur un objet, seuls les types littéraux sont acceptés. Une évaluation de fonction n’est pas réalisée. Si votre code autorise l’utilisation à importer directement des objects (tels que ceux envoyés depuis une source externe telle qu’un e-mail, cgi, etc.) sans préoccupation de ce qu’ils incluent des effets de bord “cachés” utilisant un code exécutable.

La fonction CONSTRUCT est utilisée de la même façon que la fonction CONTEXT.

    obj: construct [
        name: "Fred"
        age: 27
        city: "Ukiah"
    ]
    probe obj
    
    make object! [
        name: "Fred"
        age: 27
        city: "Ukiah"
    ]

Mais, une évaluation vraiment limitée est effectuée. Ce qui signifie que les spécifications des objets, comme suit:

    obj: construct [
        name: uppercase "Fred"
        age: 20 + 7
        time: now
    ]
    probe obj
    
    make object! [
        name: 'uppercase
        age: 20
        time: 'now
    ]

Ne produira pas les résultats évalués.

La fonction CONSTRUCT ne réalise l’évaluation seulement sur les mots, TRUE, FALSE, NONE, ON et OFF pour produire les valeurs attendues. Les mots littéraux et les chemins seront aussi évalués pour produire leurs mots respectifs et leurs chemins. Par example:

    obj: construct [
        a: true
        b: none
        c: 'word
    ]
    probe obj
    
    make object! [
        a: true
        b: none
        c: 'word
    ]

La fonction de CONSTRUCT est utilisée pour importer un objet externe, comme une référence settings depuis un fichier, réponses à des requêtes CGI, Email encodé, etc.

Pour fournir un objet prédéfini qui contient la variable par défaut des valeurs (identique à MAKE), utiliser le raffinement /WITH. L’example ci-dessous devra utiliser un objet de sortie appellé standard-prefs comme objet prédéfini.

    ;prefs: construct/with load %prefs.r standard-prefs

Fonctions en relation :

http://www.rebol.com/docs/words/wconstruct.html

context - Définit un objet unique (non dérivé).

make - Construit et retourne une nouvelle valeur.

Version anglaise officielle :

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