Skip to content

Commit 5c3e587

Browse files
committed
BREAKING! Replace datatime_data_type with time_data_type
Exclude DATE, which does not have the precision and TZ parts
1 parent 0f096cc commit 5c3e587

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

src/cst/DataType.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export type DataType =
1616
| NamedDataType
1717
| ArrayDataType
1818
| SetofDataType
19-
| DatetimeDataType
19+
| TimeDataType
2020
| IntervalDataType
2121
| TableDataType;
2222

@@ -47,9 +47,9 @@ export interface ArrayBounds extends BaseNode {
4747
}
4848

4949
// PostgreSQL
50-
export interface DatetimeDataType extends BaseNode {
51-
type: "datetime_data_type";
52-
dateKw: Keyword<"DATE" | "TIME" | "TIMESTAMP">;
50+
export interface TimeDataType extends BaseNode {
51+
type: "time_data_type";
52+
timeKw: Keyword<"TIME" | "TIMESTAMP">;
5353
precision?: ParenExpr<Expr>;
5454
timeZoneKw?: [Keyword<"WITH" | "WITHOUT">, Keyword<"TIME">, Keyword<"ZONE">];
5555
}

src/parser.pegjs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7050,7 +7050,7 @@ array_bounds
70507050
}
70517051

70527052
named_data_type
7053-
= &postgres type:(datetime_data_type / interval_data_type) {
7053+
= &postgres type:(time_data_type / interval_data_type) {
70547054
return type;
70557055
}
70567056
/ &bigquery type:(bigquery_array_type / bigquery_struct_type / bigquery_table_type) {
@@ -7060,11 +7060,11 @@ named_data_type
70607060
return loc({ type: "named_data_type", name: read(kw), params: read(params) });
70617061
}
70627062

7063-
datetime_data_type
7064-
= kw:(TIMESTAMP / DATE / TIME) precision:(__ paren$expr)? tz:(__ (WITHOUT / WITH) __ TIME __ ZONE)? {
7063+
time_data_type
7064+
= kw:(TIMESTAMP / TIME) precision:(__ paren$expr)? tz:(__ (WITHOUT / WITH) __ TIME __ ZONE)? {
70657065
return loc({
7066-
type: "datetime_data_type",
7067-
dateKw: read(kw),
7066+
type: "time_data_type",
7067+
timeKw: read(kw),
70687068
precision: read(precision),
70697069
timeZoneKw: read(tz),
70707070
});

src/showNode/data_type.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ export const dataTypeMap: FullTransformMap<string, AllDataTypeNodes> = {
77
data_type_identifier: (node) => show([node.name]),
88
array_data_type: (node) => show([node.dataType, node.bounds]),
99
array_bounds: (node) => show(["[", node.bounds, "]"]),
10-
datetime_data_type: (node) =>
11-
show([node.dateKw, node.precision, node.timeZoneKw]),
10+
time_data_type: (node) =>
11+
show([node.timeKw, node.precision, node.timeZoneKw]),
1212
interval_data_type: (node) =>
1313
show([node.intervalKw, node.fieldsKw, node.precision]),
1414
generic_type_params: (node) => show(["<", node.params, ">"]),

0 commit comments

Comments
 (0)