private static Type BuildEnum(ITypeDescription typeInfo, IDictionary<ITypeDescription, Type> typeBuildMap, ModuleBuilder modBuilder)
{
var enumBuilder = modBuilder.DefineEnum(BuildName(typeInfo.TypeName), TypeAttributes.Class | TypeAttributes.Public,
typeof(int));
typeBuildMap[typeInfo] = enumBuilder;
for (int i = -EnumRange; i < EnumRange; i++)
{
if(i<0)
{
enumBuilder.DefineLiteral("Value_Negative" + Math.Abs(i),i);
} else
{
enumBuilder.DefineLiteral("Value_" + Math.Abs(i), i);
}
}
return enumBuilder.CreateType();
}