Пример #1
0
        // This is a positional argument
        public SystemTypesSupported(SystemTypesEnum systemTypes)
        {
            this.SystemTypes = systemTypes;

            if ((systemTypes & SystemTypesEnum.WINDOWS) == SystemTypesEnum.WINDOWS)
            {
                ValidConfiguration = true;
            }
            else if ((systemTypes & SystemTypesEnum.ANDROID) == SystemTypesEnum.ANDROID)
            {
                ValidConfiguration = true;
            }
            else if ((systemTypes & SystemTypesEnum.IOS) == SystemTypesEnum.IOS)
            {
                ValidConfiguration = true;
            }
        }
Пример #2
0
        /// <summary>
        /// 返回指定类型的数据长度,如果返回-1 则表示该数据类型没有一个固定长度
        /// </summary>
        /// <param name="typeEnum"></param>
        /// <returns></returns>
        public static int GetSize(SystemTypesEnum typeEnum)
        {
            var size = -1;

            switch (typeEnum)
            {
            case SystemTypesEnum.Int32:
            case SystemTypesEnum.Single:
            case SystemTypesEnum.UInt32:
                size = 4;
                break;

            case SystemTypesEnum.TimeSpan:
            case SystemTypesEnum.Double:
            case SystemTypesEnum.Int64:
            case SystemTypesEnum.DateTime:
            case SystemTypesEnum.UInt64:
                size = 8;
                break;

            case SystemTypesEnum.Byte:
            case SystemTypesEnum.SByte:
            case SystemTypesEnum.Boolean:
                size = 1;
                break;

            case SystemTypesEnum.UInt16:
            case SystemTypesEnum.Char:
            case SystemTypesEnum.Int16:
                size = 2;
                break;

            case SystemTypesEnum.Decimal:
                size = 16;
                break;
            }
            return(size);
        }
Пример #3
0
        public static string GetTypeString(Type type, bool fullName)
        {
            if (type == null || type.FullName == "System.Void")
            {
                return("void");
            }
            if (fullName)
            {
                return(GetTypeName(type));
            }
            else
            {
                if (!allTypes.Contains(type))
                {
                    return(GetTypeName(type));
                }

                if (!type.IsArray)
                {
                    SystemTypesEnum en = (SystemTypesEnum)System.Enum.Parse(typeof(SystemTypesEnum), type.Name, true);
                    switch (en)
                    {
                    case SystemTypesEnum.TimeSpanArray:
                        return("TimeSpan[]");

                    case SystemTypesEnum.UInt16Array:
                        return("ushort[]");

                    case SystemTypesEnum.UInt32Array:
                        return("uint[]");

                    case SystemTypesEnum.UInt64Array:
                        return("ulong[]");

                    case SystemTypesEnum.Int32:
                        return("int");

                    case SystemTypesEnum.Int64:
                        return("long");

                    case SystemTypesEnum.SByte:
                        return("sbyte");

                    case SystemTypesEnum.Byte:
                        return("byte");

                    case SystemTypesEnum.Boolean:
                        return("bool");

                    case SystemTypesEnum.Char:
                        return("char");

                    case SystemTypesEnum.UInt16:
                        return("ushort");

                    case SystemTypesEnum.UInt64:
                        return("ulong");

                    case SystemTypesEnum.UInt32:
                        return("uint");

                    case SystemTypesEnum.Decimal:
                        return("decimal");

                    case SystemTypesEnum.Double:
                        return("double");

                    case SystemTypesEnum.Single:
                        return("float");

                    case SystemTypesEnum.String:
                        return("string");

                    case SystemTypesEnum.Int16:
                        return("short");

                    case SystemTypesEnum.Object:
                        return("object");

                    case SystemTypesEnum.Void:
                        return("void");
                    }
                }
                return(type.FullName.Replace('+', '.'));
            }
        }