[Mono-dev] Mono.Cecil: Full names of generic types

Alejandro Serrano trupill at yahoo.es
Sat Jul 22 10:29:54 EDT 2006

 --- Matej Urbas <matej.urbas at gmail.com> escribió:

> Hi
> I'm working on code completion (generics support) in
> MonoDevelop and I'm 
> making extensive use of Mono.Cecil.
> I have a few questions about the way Mono.Cecil
> decorates full names of 
> generic types:
> 1. All generic types have such a string appended to
> their full name: 
> "`#" - where # represents the number of generic
> parameters. Is this a 
> standard way of decorating generic names? If it is,
> can you point me to 
> a document that specifies this? (I need it mostly
> because I'm 
> interested, but I also expect to be using it when
> extracting undecorated 
> names for code completion in monodevelop.)

Decorating generic types with a grave (`) and the
number of generic parameters is the way the CLI
represents generic types, so we could have:

Func<A> => Func`1<A>
Func<A, B> => Func`2<A, B>

because the runtime imposes that all types must have
different names. It is well documented in the ECMA
Standard papers for the CLI.

Hope this helps,
Alejandro Serrano

LLama Gratis a cualquier PC del Mundo. 
Llamadas a fijos y móviles desde 1 céntimo por minuto. 

More information about the Mono-devel-list mailing list