using System; namespace Craft { public delegate string Greeter(string s); public class HeyAttribute : Attribute { public Greeter GreetAction { get; set; } } // Strongly-typed mechanism on attribute is no joy in C#, it's not // possible. C# language designers reduces the attributes "complexity" : // http://stackoverflow.com/questions/294216/why-does-c-sharp-forbid-generic-attribute-types [Hey(GreetAction = Mate.Yo)] // This will not compile, despite the simplicity public class Test { } public class Mate { public static string Yo(string s) { return "Hello " + s; } } class Program { static void Main(string[] args) { } } }
"Simplicity can't be bought later, it must be earned from the start" -- DB
Saturday, November 24, 2012
We are at the mercy of language designers
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment