| Nom |
Description |
| result |
Ce paramètre permet d'indiquer la variable recevant l'adresse calculée de l'élément dans la structure de données. |
| ty |
Ce paramètre permet d'indiquer le type de l'élément pointé. Cela peut être un type de base (par exemple, i32 pour un entier 32 bits) ou un type plus complexe (comme une structure ou un tableau). |
| ptrval |
Ce paramètre permet d'indiquer le pointeur de base à partir duquel le calcul de l'adresse se fait. Ce pointeur doit pointer vers un type de données de type ty. |
| idx |
Ce paramètre permet d'indiquer l'index déterminant la position de l'élément dans la structure de données. L'option inrange est un mot clef optionnel, indiquant que l'index est valide pour l'indexation dans la structure. Si l'index est hors des bornes, il peut provoquer un comportement indéfini sans inrange. |
| * |
Ce paramètre permet d'indiquer qu'il peut y avoir plusieurs index supplémentaires si la structure est multi-dimensionnelle (par exemple, un tableau de tableaux). |
| inbounds |
Ce paramètre permet de garantir que les index sont calculés en ne dépassant pas les bornes de la structure de données. Si l'instruction calcule une adresse en dehors des limites du tableau ou de la structure, un comportement indéfini se produit. |
| ptrvector |
Ce paramètre permet d'indiquer qu'il s'agit d'un vecteur de pointeurs, où chaque élément est un pointeur vers un tableau ou une structure. |
| vectorindextype |
Ce paramètre permet d'indiquer le type des indices dans un vecteur (par exemple, des entiers ou d'autres types). |
| inrange |
Ce paramètre permet d'indiquer que les index sont dans l'intervalle des valeurs valides pour l'accès à un vecteur. |
Cette instruction permet de demander l'adresse d'un sous-élément d'une structure de données d'agrégat.