Cercando la lista esatta dei possibili MethodAttributes.SpecialName
-
05-10-2019 - |
Domanda
Sono consapevole del ctor
, cctor
, proprietà / indicizzatore prefisso: get_
, set_
, prefisso gestione degli eventi: add_
, remove_
.
Ho visto un prefisso raise_
una o due volte (non ricordo dove).
Esiste un elenco definitivo esiste a livello .Net (ECMA spec.)? Se sì dov'è?
È un "elenco aperto" in modo che qualsiasi (nuovo) lingua può definirli per i suoi (futuri) bisogni?
Soluzione
operatori definiti dall'utente sarebbe un altro esempio. Come System.String.op_Equality (operatore ==):
.method public hidebysig specialname static bool op_Equality(string a, string b) cil managed
{
.maxstack 8
L_0000: ldarg.0
L_0001: ldarg.1
L_0002: call bool System.String::Equals(string, string)
L_0007: ret
}
Non c'è elenco esaustivo, le implementazioni di lingua sono liberi di utilizzare l'attributo di nascondere la loro colla. Probabilmente visto il prefisso raise_ il codice generato dal compilatore VB.NET utilizzando la funzione di accesso RaiseEvent per esempio.