annotation type code generation
(annotation type is attribute in C#)