I\'ve got an enumeration type defined like so:
type tags = | ART = 0 | N = 1 | V = 2 | P = 3 | NULL = 4
is
Robert's right about how to generate an actual enum and get its cases. If you have a true union type, you can get the cases via the Microsoft.FSharp.Reflection.FSharpType.GetUnionCases function.
Microsoft.FSharp.Reflection.FSharpType.GetUnionCases