Definition at line 24 of file DataTypeBuilder.cs.
Definition at line 25 of file DataTypeBuilder.cs.
26 var node = sqlNode as DataTypeNode;
28 throw new ArgumentException();
30 var typeName = node.TypeName;
31 var typeMeta =
new List<DataTypeMeta>();
34 if (node.IsPrimitive) {
35 if (
String.Equals(typeName,
"LONG VARCHAR")) {
37 }
else if (
String.Equals(node.TypeName,
"LONG VARBINARY")) {
39 }
else if (
String.Equals(typeName,
"INT", StringComparison.OrdinalIgnoreCase)) {
55 typeMeta.Add(
new DataTypeMeta(
"Scale", node.Scale.ToString()));
56 if (node.HasPrecision)
57 typeMeta.Add(
new DataTypeMeta(
"Precision", node.Precision.ToString()));
62 typeMeta.Add(
new DataTypeMeta(
"MaxSize", node.Size.ToString()));
66 typeMeta.Add(
new DataTypeMeta(
"Encoding", node.Encoding));
71 typeMeta.Add(
new DataTypeMeta(
"MaxSize", node.Size.ToString()));
79 if (
String.IsNullOrEmpty(typeName))
80 throw new SqlParseException(
"Could not determine type name.");
83 if (!node.IsPrimitive && node.Metadata != null)
89 throw new SqlParseException(
String.Format(
"User defined type {0} could not be resolved.", typeName));
A long string in the system.
static SqlType Resolve(SqlTypeCode typeCode, string typeName, DataTypeMeta[] metadata, ITypeResolver resolver)
static DataTypeMeta[] BuildTypeMeta(Dictionary< string, string > metadata)
SqlTypeCode
Enumerates the codes of all SQL types handled by the system.
static DataTypeMeta [] Deveel.Data.Sql.Parser.DataTypeBuilder.BuildTypeMeta |
( |
Dictionary< string, string > |
metadata | ) |
|
|
inlinestaticprivate |
The documentation for this class was generated from the following file:
- /var/calculate/remote/distfiles/egit-src/deveeldb.git/src/deveeldb/Deveel.Data.Sql.Parser/DataTypeBuilder.cs