private static VfpType GetVfpType(TypeUsage type, out int?size) { var primitiveTypeKind = type.ToPrimitiveTypeKind(); size = default(int?); switch (primitiveTypeKind) { case PrimitiveTypeKind.Binary: size = GetParameterSize(type); return(GetBinaryVfpType(type)); case PrimitiveTypeKind.Boolean: return(VfpType.Logical); case PrimitiveTypeKind.DateTime: return(VfpType.DateTime); case PrimitiveTypeKind.Double: return(VfpType.Double); case PrimitiveTypeKind.Guid: size = VfpMapping.GuidStringWidth; return(VfpType.Character); case PrimitiveTypeKind.Byte: case PrimitiveTypeKind.Int16: case PrimitiveTypeKind.Int32: case PrimitiveTypeKind.SByte: return(VfpType.Integer); case PrimitiveTypeKind.Decimal: case PrimitiveTypeKind.Int64: return(VfpType.Numeric); case PrimitiveTypeKind.Single: return(VfpType.Float); case PrimitiveTypeKind.String: size = GetParameterSize(type); return(GetStringVfpType(type, size)); default: throw new NotSupportedException("PrimitiveTypeKind = " + primitiveTypeKind); } }
internal static bool IsBoolean(this TypeUsage typeUsage) { return typeUsage.ToPrimitiveTypeKind() == PrimitiveTypeKind.Boolean; }