Section courante

A propos

Section administrative du site

concat_idents (dépréciée, expérimental)

Concaténation d'identifiant
Rust

Syntaxe

macro_rules! concat_idents {
   ($($e:ident),+ $(,)?) => { ... };
}

Description

Cette macro permet de fusionner plusieurs identifiants en un seul, ce qui est utile dans certains générateurs de code, mais elle est sujette à suppression.

Remarques

Obsolète depuis la version 1.88.0 : utilisez plutôt ${concat(...)} avec la fonctionnalité macro_metavar_expr_concat.

Il s'agit d'une API expérimentale nocturne. (concat_idents #29599)

Permet de concaténer des identifiants en un seul identifiant.

Cette macro prend n'importe quel nombre d'identifiants séparés par des virgules et les concatène tous en un seul, produisant ainsi une expression étant un nouvel identifiant. Notez que, par mesure d'hygiène, cette macro ne peut pas capturer de variables locales. De plus, en règle générale, les macros ne sont autorisées qu'en position d'élément, d'instruction ou d'expression. Cela signifie que, bien que vous puissiez utiliser cette macro pour faire référence à des variables, fonctions ou modules existants, vous ne pouvez pas en définir de nouveaux.

Exemples

  1. #![feature(concat_idents)]
  2.  
  3. fn foobar() -> u32 { 23 }
  4.  
  5. let f = concat_idents!(foo, bar);
  6. println!("{}", f());
  7.  
  8. // fn concat_idents!(new, fun, name) { } // pas utilisable de cette façon !


Dernière mise à jour : Mardi, le 5 Août 2025