postpone  ( -- )

publication: 18 novembre 2023 / mis à jour 18 novembre 2023

Read this page in english

 

vocabulaire: forth

Ignore les délimiteurs d'espaces de début. Analyse name délimité par un espace. Trouve name. Ajoutez la sémantique de compilation de name à la définition actuelle.

POSTPONE remplace la plupart des fonctionnalités de COMPILE et [COMPILE]. COMPILE et [COMPILE] sont utilisés dans le même but : reporter le comportement de compilation du mot suivant dans la zone d'analyse. COMPILE a été conçu pour être appliqué aux mots non immédiats et [COMPILE] aux mots immédiats.

Exemple:

DEFINED? esp_errors [IF]   \ test if esp_err.fs loaded 
    0 to NODEBUG 
[ELSE] 
    : .esp_error (  error -- ) 
        POSTPONE drop ; immediate 
[THEN] 
\ init GPIO used by KY-022 
: ky022.gpio.init ( -- ) 
    RMT_RX_CHANNEL RMT_MODE_RX IR_RECEIVE_PIN INVERT_SIG rmt_set_gpio .esp_error 
  ; 
\ if vocabulary esp_errors is not defined, the word 
\ .esp_error compile drop 

Legal: site web personnel sans commerce / personal site without seling