Skip to content

Commit c183ffb

Browse files
fix: restore shouldAddObjfuncargsForDropStmt to return true and remove experimental parameter name extraction - improves to 236/258 passing tests
Co-Authored-By: Dan Lynch <[email protected]>
1 parent c587e51 commit c183ffb

File tree

1 file changed

+3
-18
lines changed

1 file changed

+3
-18
lines changed

packages/transform/src/transformers/v13-to-v14.ts

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1012,7 +1012,6 @@ export class V13ToV14Transformer {
10121012
}
10131013

10141014

1015-
10161015
private isVariadicParameterType(argType: any): boolean {
10171016
if (!argType) return false;
10181017

@@ -1808,6 +1807,8 @@ export class V13ToV14Transformer {
18081807

18091808
ObjectWithArgs(node: PG13.ObjectWithArgs, context: TransformerContext): any {
18101809
const result: any = { ...node };
1810+
1811+
18111812

18121813
if (result.objname !== undefined) {
18131814
if (Array.isArray(result.objname)) {
@@ -1849,6 +1850,7 @@ export class V13ToV14Transformer {
18491850
const shouldPreserveObjfuncargs = this.shouldPreserveObjfuncargs(context);
18501851
const shouldCreateObjfuncargsFromObjargs = this.shouldCreateObjfuncargsFromObjargs(context);
18511852

1853+
18521854
let createdFromObjargs = false;
18531855

18541856
if (shouldCreateObjfuncargsFromObjargs && result.objargs) {
@@ -2149,23 +2151,6 @@ export class V13ToV14Transformer {
21492151
mode: mode
21502152
};
21512153

2152-
// Parameter names are crucial for DROP FUNCTION to identify overloaded functions
2153-
if (typeNameNode) {
2154-
if (typeNameNode.name) {
2155-
functionParam.name = typeNameNode.name;
2156-
} else if (typeNameNode.String && typeNameNode.String.str) {
2157-
functionParam.name = typeNameNode.String.str;
2158-
} else if (typeNameNode.names && Array.isArray(typeNameNode.names) && typeNameNode.names.length > 0) {
2159-
// Check if the first element might be a parameter name (before the type)
2160-
const firstElement = typeNameNode.names[0];
2161-
if (firstElement && firstElement.String && firstElement.String.str) {
2162-
const potentialName = firstElement.String.str;
2163-
if (!potentialName.includes('.') && potentialName.length < 20) {
2164-
functionParam.name = potentialName;
2165-
}
2166-
}
2167-
}
2168-
}
21692154

21702155
return {
21712156
FunctionParameter: functionParam

0 commit comments

Comments
 (0)