当前位置: 首页>>代码示例>>C#>>正文


C# Options.EnumFilter方法代码示例

本文整理汇总了C#中Options.EnumFilter方法的典型用法代码示例。如果您正苦于以下问题:C# Options.EnumFilter方法的具体用法?C# Options.EnumFilter怎么用?C# Options.EnumFilter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Options的用法示例。


在下文中一共展示了Options.EnumFilter方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TranslateEnums

		private void TranslateEnums(XmlSpecData spec, DotNetApiData api, Options options)
		{			
			foreach (var specEnum in spec.Enums.Where(x => options.EnumFilter(x)))
			{
				var enumData = new DotNetEnumData()
				{
					OriginalName = specEnum.Name,
					Name = this.InflectEnumName(specEnum.Name, options),
					Value = specEnum.Value,
                    Type = specEnum.Value.Length <= 6 ? "uint" : "ulong"
				};

                if (enumData.Value.StartsWith("-"))
                    enumData.Value = string.Format("unchecked((uint){0})", enumData.Value);

				api.Enums.Add(enumData);
			}
		}
开发者ID:smack0007,项目名称:GLDotNet,代码行数:18,代码来源:DotNetTranslator.cs

示例2: TranslateEnumGroups

        private void TranslateEnumGroups(XmlSpecData spec, DotNetApiData api, Options options)
        {
            foreach (var specEnumGroup in spec.EnumGroups.Where(x => options.EnumGroupFilter(x.Name)))
            {
                var enumGroupData = new DotNetEnumGroupData()
                {
                    Name = specEnumGroup.Name,
                };

                foreach (var enumName in specEnumGroup.Enums.Distinct())
                {
                    var xmlEnumData = spec.Enums.SingleOrDefault(x => x.Name == enumName);

                    if (xmlEnumData == null || !options.EnumFilter(xmlEnumData))
                        continue;

                    var enumData = api.Enums.SingleOrDefault(x => x.OriginalName == enumName);

                    if (enumData == null)
                        continue;

                    enumGroupData.Enums.Add(enumData);

                    if (spec.Enums.Single(x => x.Name == enumName).Type == "bitmask")
                        enumGroupData.IsFlags = true;
                }

                api.EnumGroups.Add(enumGroupData);
            }
        }
开发者ID:smack0007,项目名称:GLDotNet,代码行数:30,代码来源:DotNetTranslator.cs


注:本文中的Options.EnumFilter方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。