Example #1
0
        /// <summary>
        /// Creates and adds a new member to this enum type.
        /// </summary>
        /// <param name="name">Name of the member.</param>
        /// <param name="value">Value of the member.</param>
        /// <returns>Created member.</returns>
        public EdmEnumMember AddMember(string name, IEdmEnumMemberValue value)
        {
            EdmEnumMember member = new EdmEnumMember(this, name, value);

            this.AddMember(member);
            return(member);
        }
Example #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="EdmEnumMember"/> class.
        /// </summary>
        /// <param name="declaringType">The type that declares this member.</param>
        /// <param name="name">Name of this enumeration member.</param>
        /// <param name="value">Value of this enumeration member.</param>
        public EdmEnumMember(IEdmEnumType declaringType, string name, IEdmEnumMemberValue value)
            : base(name)
        {
            EdmUtil.CheckArgumentNull(declaringType, "declaringType");
            EdmUtil.CheckArgumentNull(value, "value");

            this.declaringType = declaringType;
            this.value         = value;
        }
Example #3
0
        private static void GetEnumValuesAndNames(IEdmEnumType enumType, ref ulong[] values, ref string[] names, bool getValues, bool getNames)
        {
            Dictionary <string, ulong> dict = new Dictionary <string, ulong>();

            foreach (var member in enumType.Members)
            {
                IEdmEnumMemberValue intValue = member.Value;
                if (intValue != null)
                {
                    dict.Add(member.Name, (ulong)intValue.Value);
                }
            }

            Dictionary <string, ulong> sortedDict = dict.OrderBy(d => d.Value).ToDictionary(d => d.Key, d => d.Value);

            values = sortedDict.Select(d => d.Value).ToArray();
            names  = sortedDict.Select(d => d.Key).ToArray();
        }
Example #4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EdmEnumValue"/> class.
 /// </summary>
 /// <param name="type">A reference to the enumeration type that describes this value.</param>
 /// <param name="value">The underlying type value.</param>
 public EdmEnumValue(IEdmEnumTypeReference type, IEdmEnumMemberValue value)
     : base(type)
 {
     this.value = value;
 }
 public CustomEnumMember(IEdmEnumType declaringType, string name, IEdmEnumMemberValue value)
     : base(name)
 {
     this.declaringType = declaringType;
     this.value         = value;
 }