/// <summary> /// Retrieves configuration builder for particular enumeration value /// </summary> /// <param name="conf">Configuration builder</param> /// <param name="propertyName">String enum property name</param> /// <returns>Configuration builder</returns> public static EnumValueExportConfiguration Value(this IEnumConfigurationBuidler conf, string propertyName) { var field = conf.EnumType._GetField(propertyName); var c = new EnumValueExportConfiguration(field, conf.Context.Project.Blueprint(conf.EnumType)); return(c); }
/// <summary> /// Overrides enum value's string initializer. Please escape quotes manually. /// </summary> /// <param name="conf"></param> /// <param name="initializer"></param> /// <returns></returns> public static EnumValueExportConfiguration Initializer(this EnumValueExportConfiguration conf, string initializer) { var at = (IAttributed <TsValueAttribute>)conf; at.AttributePrototype.Initializer = initializer; return(conf); }
/// <summary> /// Retrieves configuration builder for particular enumeration value /// </summary> /// <typeparam name="T">Enumeration type</typeparam> /// <param name="conf">Configuration builder</param> /// <param name="value">Enum value</param> /// <returns>Configuration builder</returns> public static EnumValueExportConfiguration Value <T>(this EnumConfigurationBuilder <T> conf, T value) where T : struct { var n = Enum.GetName(typeof(T), value); var field = typeof(T)._GetField(n); var c = new EnumValueExportConfiguration(field, conf._blueprint); return(c); }
/// <summary> /// Configures export of particular enumeration value /// </summary> /// <param name="conf">Configuration builder</param> /// <param name="propertyName">String enum property name</param> /// <param name="valueConf">Enum value export configuration</param> /// <returns>Configuration builder</returns> public static T Value <T>(this T conf, string propertyName, Action <EnumValueExportConfiguration> valueConf) where T : IEnumConfigurationBuidler { var field = conf.EnumType._GetField(propertyName); var c = new EnumValueExportConfiguration(field, conf.Context.Project.Blueprint(conf.EnumType)); valueConf(c); return(conf); }