feat: pgsql collect column name (#216)

* feat(pgsql: collect column name): pgsql: collect column name

* feat(pgsql): repair column name's unit test and sql

* feat(pgsql): pgsql: collect expression's column

* feat(update column's collect of some expression): pgsql: update column's collect of some expression

---------

Co-authored-by: zhaoge <>
This commit is contained in:
XCynthia
2023-11-28 10:07:29 +08:00
committed by GitHub
parent 428d851913
commit db05cb3e4f
10 changed files with 21365 additions and 18524 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -48,9 +48,11 @@ import { Var_nameContext } from "./PostgreSQLParser";
import { Var_listContext } from "./PostgreSQLParser";
import { Var_valueContext } from "./PostgreSQLParser";
import { Iso_levelContext } from "./PostgreSQLParser";
import { Opt_boolean_or_string_columnContext } from "./PostgreSQLParser";
import { Opt_boolean_or_stringContext } from "./PostgreSQLParser";
import { Zone_valueContext } from "./PostgreSQLParser";
import { Opt_encodingContext } from "./PostgreSQLParser";
import { Nonreservedword_or_sconst_columnContext } from "./PostgreSQLParser";
import { Nonreservedword_or_sconstContext } from "./PostgreSQLParser";
import { VariableresetstmtContext } from "./PostgreSQLParser";
import { Reset_restContext } from "./PostgreSQLParser";
@ -114,6 +116,7 @@ import { TableelementlistContext } from "./PostgreSQLParser";
import { TypedtableelementlistContext } from "./PostgreSQLParser";
import { TableelementContext } from "./PostgreSQLParser";
import { TypedtableelementContext } from "./PostgreSQLParser";
import { ColumnDefCluaseContext } from "./PostgreSQLParser";
import { ColumnDefContext } from "./PostgreSQLParser";
import { CompressionCluaseContext } from "./PostgreSQLParser";
import { StorageCluaseContext } from "./PostgreSQLParser";
@ -133,7 +136,6 @@ import { ConstraintelemContext } from "./PostgreSQLParser";
import { Opt_no_inheritContext } from "./PostgreSQLParser";
import { Opt_column_listContext } from "./PostgreSQLParser";
import { ColumnlistContext } from "./PostgreSQLParser";
import { ColumnElemContext } from "./PostgreSQLParser";
import { Opt_c_includeContext } from "./PostgreSQLParser";
import { Key_matchContext } from "./PostgreSQLParser";
import { ExclusionconstraintlistContext } from "./PostgreSQLParser";
@ -287,6 +289,9 @@ import { Object_type_any_nameContext } from "./PostgreSQLParser";
import { Object_type_nameContext } from "./PostgreSQLParser";
import { Object_type_name_on_any_nameContext } from "./PostgreSQLParser";
import { Any_name_listContext } from "./PostgreSQLParser";
import { Table_column_nameContext } from "./PostgreSQLParser";
import { Relation_column_nameContext } from "./PostgreSQLParser";
import { Relation_nameContext } from "./PostgreSQLParser";
import { Any_nameContext } from "./PostgreSQLParser";
import { AttrsContext } from "./PostgreSQLParser";
import { Type_name_listContext } from "./PostgreSQLParser";
@ -668,8 +673,10 @@ import { Qual_opContext } from "./PostgreSQLParser";
import { Qual_all_opContext } from "./PostgreSQLParser";
import { Subquery_OpContext } from "./PostgreSQLParser";
import { Expr_listContext } from "./PostgreSQLParser";
import { Column_expr_list_noparenContext } from "./PostgreSQLParser";
import { Column_expr_listContext } from "./PostgreSQLParser";
import { Column_exprContext } from "./PostgreSQLParser";
import { Column_expr_noparenContext } from "./PostgreSQLParser";
import { Func_arg_listContext } from "./PostgreSQLParser";
import { Func_arg_exprContext } from "./PostgreSQLParser";
import { Type_listContext } from "./PostgreSQLParser";
@ -717,6 +724,8 @@ import { Routine_name_createContext } from "./PostgreSQLParser";
import { Routine_nameContext } from "./PostgreSQLParser";
import { Procedure_nameContext } from "./PostgreSQLParser";
import { Procedure_name_createContext } from "./PostgreSQLParser";
import { Column_nameContext } from "./PostgreSQLParser";
import { Column_name_createContext } from "./PostgreSQLParser";
import { NameContext } from "./PostgreSQLParser";
import { Attr_nameContext } from "./PostgreSQLParser";
import { File_nameContext } from "./PostgreSQLParser";
@ -742,6 +751,7 @@ import { Exclude_elementContext } from "./PostgreSQLParser";
import { Index_paramentersContext } from "./PostgreSQLParser";
import { Type_function_nameContext } from "./PostgreSQLParser";
import { Type_usual_nameContext } from "./PostgreSQLParser";
import { Nonreservedword_columnContext } from "./PostgreSQLParser";
import { NonreservedwordContext } from "./PostgreSQLParser";
import { CollabelContext } from "./PostgreSQLParser";
import { IdentifierContext } from "./PostgreSQLParser";
@ -845,6 +855,7 @@ import { Join_conditionContext } from "./PostgreSQLParser";
import { Merge_when_clauseContext } from "./PostgreSQLParser";
import { Merge_insertContext } from "./PostgreSQLParser";
import { Merge_updateContext } from "./PostgreSQLParser";
import { Default_values_or_valuesContext } from "./PostgreSQLParser";
import { ExprofdefaultlistContext } from "./PostgreSQLParser";
import { ExprofdefaultContext } from "./PostgreSQLParser";
import { Stmt_closeContext } from "./PostgreSQLParser";
@ -1394,6 +1405,17 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitIso_level?: (ctx: Iso_levelContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.opt_boolean_or_string_column`.
* @param ctx the parse tree
*/
enterOpt_boolean_or_string_column?: (ctx: Opt_boolean_or_string_columnContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.opt_boolean_or_string_column`.
* @param ctx the parse tree
*/
exitOpt_boolean_or_string_column?: (ctx: Opt_boolean_or_string_columnContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.opt_boolean_or_string`.
* @param ctx the parse tree
@ -1427,6 +1449,17 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitOpt_encoding?: (ctx: Opt_encodingContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.nonreservedword_or_sconst_column`.
* @param ctx the parse tree
*/
enterNonreservedword_or_sconst_column?: (ctx: Nonreservedword_or_sconst_columnContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.nonreservedword_or_sconst_column`.
* @param ctx the parse tree
*/
exitNonreservedword_or_sconst_column?: (ctx: Nonreservedword_or_sconst_columnContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.nonreservedword_or_sconst`.
* @param ctx the parse tree
@ -2120,6 +2153,17 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitTypedtableelement?: (ctx: TypedtableelementContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.columnDefCluase`.
* @param ctx the parse tree
*/
enterColumnDefCluase?: (ctx: ColumnDefCluaseContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.columnDefCluase`.
* @param ctx the parse tree
*/
exitColumnDefCluase?: (ctx: ColumnDefCluaseContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.columnDef`.
* @param ctx the parse tree
@ -2329,17 +2373,6 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitColumnlist?: (ctx: ColumnlistContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.columnElem`.
* @param ctx the parse tree
*/
enterColumnElem?: (ctx: ColumnElemContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.columnElem`.
* @param ctx the parse tree
*/
exitColumnElem?: (ctx: ColumnElemContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.opt_c_include`.
* @param ctx the parse tree
@ -4023,6 +4056,39 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitAny_name_list?: (ctx: Any_name_listContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.table_column_name`.
* @param ctx the parse tree
*/
enterTable_column_name?: (ctx: Table_column_nameContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.table_column_name`.
* @param ctx the parse tree
*/
exitTable_column_name?: (ctx: Table_column_nameContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.relation_column_name`.
* @param ctx the parse tree
*/
enterRelation_column_name?: (ctx: Relation_column_nameContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.relation_column_name`.
* @param ctx the parse tree
*/
exitRelation_column_name?: (ctx: Relation_column_nameContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.relation_name`.
* @param ctx the parse tree
*/
enterRelation_name?: (ctx: Relation_nameContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.relation_name`.
* @param ctx the parse tree
*/
exitRelation_name?: (ctx: Relation_nameContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.any_name`.
* @param ctx the parse tree
@ -8214,6 +8280,17 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitExpr_list?: (ctx: Expr_listContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.column_expr_list_noparen`.
* @param ctx the parse tree
*/
enterColumn_expr_list_noparen?: (ctx: Column_expr_list_noparenContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.column_expr_list_noparen`.
* @param ctx the parse tree
*/
exitColumn_expr_list_noparen?: (ctx: Column_expr_list_noparenContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.column_expr_list`.
* @param ctx the parse tree
@ -8236,6 +8313,17 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitColumn_expr?: (ctx: Column_exprContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.column_expr_noparen`.
* @param ctx the parse tree
*/
enterColumn_expr_noparen?: (ctx: Column_expr_noparenContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.column_expr_noparen`.
* @param ctx the parse tree
*/
exitColumn_expr_noparen?: (ctx: Column_expr_noparenContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.func_arg_list`.
* @param ctx the parse tree
@ -8753,6 +8841,28 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitProcedure_name_create?: (ctx: Procedure_name_createContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.column_name`.
* @param ctx the parse tree
*/
enterColumn_name?: (ctx: Column_nameContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.column_name`.
* @param ctx the parse tree
*/
exitColumn_name?: (ctx: Column_nameContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.column_name_create`.
* @param ctx the parse tree
*/
enterColumn_name_create?: (ctx: Column_name_createContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.column_name_create`.
* @param ctx the parse tree
*/
exitColumn_name_create?: (ctx: Column_name_createContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.name`.
* @param ctx the parse tree
@ -9028,6 +9138,17 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitType_usual_name?: (ctx: Type_usual_nameContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.nonreservedword_column`.
* @param ctx the parse tree
*/
enterNonreservedword_column?: (ctx: Nonreservedword_columnContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.nonreservedword_column`.
* @param ctx the parse tree
*/
exitNonreservedword_column?: (ctx: Nonreservedword_columnContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.nonreservedword`.
* @param ctx the parse tree
@ -10161,6 +10282,17 @@ export interface PostgreSQLParserListener extends ParseTreeListener {
*/
exitMerge_update?: (ctx: Merge_updateContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.default_values_or_values`.
* @param ctx the parse tree
*/
enterDefault_values_or_values?: (ctx: Default_values_or_valuesContext) => void;
/**
* Exit a parse tree produced by `PostgreSQLParser.default_values_or_values`.
* @param ctx the parse tree
*/
exitDefault_values_or_values?: (ctx: Default_values_or_valuesContext) => void;
/**
* Enter a parse tree produced by `PostgreSQLParser.exprofdefaultlist`.
* @param ctx the parse tree

View File

@ -48,9 +48,11 @@ import { Var_nameContext } from "./PostgreSQLParser";
import { Var_listContext } from "./PostgreSQLParser";
import { Var_valueContext } from "./PostgreSQLParser";
import { Iso_levelContext } from "./PostgreSQLParser";
import { Opt_boolean_or_string_columnContext } from "./PostgreSQLParser";
import { Opt_boolean_or_stringContext } from "./PostgreSQLParser";
import { Zone_valueContext } from "./PostgreSQLParser";
import { Opt_encodingContext } from "./PostgreSQLParser";
import { Nonreservedword_or_sconst_columnContext } from "./PostgreSQLParser";
import { Nonreservedword_or_sconstContext } from "./PostgreSQLParser";
import { VariableresetstmtContext } from "./PostgreSQLParser";
import { Reset_restContext } from "./PostgreSQLParser";
@ -114,6 +116,7 @@ import { TableelementlistContext } from "./PostgreSQLParser";
import { TypedtableelementlistContext } from "./PostgreSQLParser";
import { TableelementContext } from "./PostgreSQLParser";
import { TypedtableelementContext } from "./PostgreSQLParser";
import { ColumnDefCluaseContext } from "./PostgreSQLParser";
import { ColumnDefContext } from "./PostgreSQLParser";
import { CompressionCluaseContext } from "./PostgreSQLParser";
import { StorageCluaseContext } from "./PostgreSQLParser";
@ -133,7 +136,6 @@ import { ConstraintelemContext } from "./PostgreSQLParser";
import { Opt_no_inheritContext } from "./PostgreSQLParser";
import { Opt_column_listContext } from "./PostgreSQLParser";
import { ColumnlistContext } from "./PostgreSQLParser";
import { ColumnElemContext } from "./PostgreSQLParser";
import { Opt_c_includeContext } from "./PostgreSQLParser";
import { Key_matchContext } from "./PostgreSQLParser";
import { ExclusionconstraintlistContext } from "./PostgreSQLParser";
@ -287,6 +289,9 @@ import { Object_type_any_nameContext } from "./PostgreSQLParser";
import { Object_type_nameContext } from "./PostgreSQLParser";
import { Object_type_name_on_any_nameContext } from "./PostgreSQLParser";
import { Any_name_listContext } from "./PostgreSQLParser";
import { Table_column_nameContext } from "./PostgreSQLParser";
import { Relation_column_nameContext } from "./PostgreSQLParser";
import { Relation_nameContext } from "./PostgreSQLParser";
import { Any_nameContext } from "./PostgreSQLParser";
import { AttrsContext } from "./PostgreSQLParser";
import { Type_name_listContext } from "./PostgreSQLParser";
@ -668,8 +673,10 @@ import { Qual_opContext } from "./PostgreSQLParser";
import { Qual_all_opContext } from "./PostgreSQLParser";
import { Subquery_OpContext } from "./PostgreSQLParser";
import { Expr_listContext } from "./PostgreSQLParser";
import { Column_expr_list_noparenContext } from "./PostgreSQLParser";
import { Column_expr_listContext } from "./PostgreSQLParser";
import { Column_exprContext } from "./PostgreSQLParser";
import { Column_expr_noparenContext } from "./PostgreSQLParser";
import { Func_arg_listContext } from "./PostgreSQLParser";
import { Func_arg_exprContext } from "./PostgreSQLParser";
import { Type_listContext } from "./PostgreSQLParser";
@ -717,6 +724,8 @@ import { Routine_name_createContext } from "./PostgreSQLParser";
import { Routine_nameContext } from "./PostgreSQLParser";
import { Procedure_nameContext } from "./PostgreSQLParser";
import { Procedure_name_createContext } from "./PostgreSQLParser";
import { Column_nameContext } from "./PostgreSQLParser";
import { Column_name_createContext } from "./PostgreSQLParser";
import { NameContext } from "./PostgreSQLParser";
import { Attr_nameContext } from "./PostgreSQLParser";
import { File_nameContext } from "./PostgreSQLParser";
@ -742,6 +751,7 @@ import { Exclude_elementContext } from "./PostgreSQLParser";
import { Index_paramentersContext } from "./PostgreSQLParser";
import { Type_function_nameContext } from "./PostgreSQLParser";
import { Type_usual_nameContext } from "./PostgreSQLParser";
import { Nonreservedword_columnContext } from "./PostgreSQLParser";
import { NonreservedwordContext } from "./PostgreSQLParser";
import { CollabelContext } from "./PostgreSQLParser";
import { IdentifierContext } from "./PostgreSQLParser";
@ -845,6 +855,7 @@ import { Join_conditionContext } from "./PostgreSQLParser";
import { Merge_when_clauseContext } from "./PostgreSQLParser";
import { Merge_insertContext } from "./PostgreSQLParser";
import { Merge_updateContext } from "./PostgreSQLParser";
import { Default_values_or_valuesContext } from "./PostgreSQLParser";
import { ExprofdefaultlistContext } from "./PostgreSQLParser";
import { ExprofdefaultContext } from "./PostgreSQLParser";
import { Stmt_closeContext } from "./PostgreSQLParser";
@ -1207,6 +1218,13 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitIso_level?: (ctx: Iso_levelContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.opt_boolean_or_string_column`.
* @param ctx the parse tree
* @return the visitor result
*/
visitOpt_boolean_or_string_column?: (ctx: Opt_boolean_or_string_columnContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.opt_boolean_or_string`.
* @param ctx the parse tree
@ -1228,6 +1246,13 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitOpt_encoding?: (ctx: Opt_encodingContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.nonreservedword_or_sconst_column`.
* @param ctx the parse tree
* @return the visitor result
*/
visitNonreservedword_or_sconst_column?: (ctx: Nonreservedword_or_sconst_columnContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.nonreservedword_or_sconst`.
* @param ctx the parse tree
@ -1669,6 +1694,13 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitTypedtableelement?: (ctx: TypedtableelementContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.columnDefCluase`.
* @param ctx the parse tree
* @return the visitor result
*/
visitColumnDefCluase?: (ctx: ColumnDefCluaseContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.columnDef`.
* @param ctx the parse tree
@ -1802,13 +1834,6 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitColumnlist?: (ctx: ColumnlistContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.columnElem`.
* @param ctx the parse tree
* @return the visitor result
*/
visitColumnElem?: (ctx: ColumnElemContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.opt_c_include`.
* @param ctx the parse tree
@ -2880,6 +2905,27 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitAny_name_list?: (ctx: Any_name_listContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.table_column_name`.
* @param ctx the parse tree
* @return the visitor result
*/
visitTable_column_name?: (ctx: Table_column_nameContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.relation_column_name`.
* @param ctx the parse tree
* @return the visitor result
*/
visitRelation_column_name?: (ctx: Relation_column_nameContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.relation_name`.
* @param ctx the parse tree
* @return the visitor result
*/
visitRelation_name?: (ctx: Relation_nameContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.any_name`.
* @param ctx the parse tree
@ -5547,6 +5593,13 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitExpr_list?: (ctx: Expr_listContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.column_expr_list_noparen`.
* @param ctx the parse tree
* @return the visitor result
*/
visitColumn_expr_list_noparen?: (ctx: Column_expr_list_noparenContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.column_expr_list`.
* @param ctx the parse tree
@ -5561,6 +5614,13 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitColumn_expr?: (ctx: Column_exprContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.column_expr_noparen`.
* @param ctx the parse tree
* @return the visitor result
*/
visitColumn_expr_noparen?: (ctx: Column_expr_noparenContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.func_arg_list`.
* @param ctx the parse tree
@ -5890,6 +5950,20 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitProcedure_name_create?: (ctx: Procedure_name_createContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.column_name`.
* @param ctx the parse tree
* @return the visitor result
*/
visitColumn_name?: (ctx: Column_nameContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.column_name_create`.
* @param ctx the parse tree
* @return the visitor result
*/
visitColumn_name_create?: (ctx: Column_name_createContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.name`.
* @param ctx the parse tree
@ -6065,6 +6139,13 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitType_usual_name?: (ctx: Type_usual_nameContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.nonreservedword_column`.
* @param ctx the parse tree
* @return the visitor result
*/
visitNonreservedword_column?: (ctx: Nonreservedword_columnContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.nonreservedword`.
* @param ctx the parse tree
@ -6786,6 +6867,13 @@ export interface PostgreSQLParserVisitor<Result> extends ParseTreeVisitor<Result
*/
visitMerge_update?: (ctx: Merge_updateContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.default_values_or_values`.
* @param ctx the parse tree
* @return the visitor result
*/
visitDefault_values_or_values?: (ctx: Default_values_or_valuesContext) => Result;
/**
* Visit a parse tree produced by `PostgreSQLParser.exprofdefaultlist`.
* @param ctx the parse tree