StringInfoData buf;
HeapTuple proctup;
- initStringInfo(&buf);
-
proctup = SearchSysCache1(PROCOID, ObjectIdGetDatum(funcid));
if (!HeapTupleIsValid(proctup))
- elog(ERROR, "cache lookup failed for function %u", funcid);
+ PG_RETURN_NULL();
+
+ initStringInfo(&buf);
(void) print_function_arguments(&buf, proctup, false, true);
StringInfoData buf;
HeapTuple proctup;
- initStringInfo(&buf);
-
proctup = SearchSysCache1(PROCOID, ObjectIdGetDatum(funcid));
if (!HeapTupleIsValid(proctup))
- elog(ERROR, "cache lookup failed for function %u", funcid);
+ PG_RETURN_NULL();
+
+ initStringInfo(&buf);
(void) print_function_arguments(&buf, proctup, false, false);
StringInfoData buf;
HeapTuple proctup;
- initStringInfo(&buf);
-
proctup = SearchSysCache1(PROCOID, ObjectIdGetDatum(funcid));
if (!HeapTupleIsValid(proctup))
- elog(ERROR, "cache lookup failed for function %u", funcid);
+ PG_RETURN_NULL();
+
+ initStringInfo(&buf);
print_function_rettype(&buf, proctup);
proctup = SearchSysCache1(PROCOID, ObjectIdGetDatum(funcid));
if (!HeapTupleIsValid(proctup))
- elog(ERROR, "cache lookup failed for function %u", funcid);
+ PG_RETURN_NULL();
numargs = get_func_arg_info(proctup, &argtypes, &argnames, &argmodes);
if (nth_arg < 1 || nth_arg > numargs || !is_input_argument(nth_arg - 1, argmodes))
(1 row)
+SELECT pg_get_function_arguments(0);
+ pg_get_function_arguments
+---------------------------
+
+(1 row)
+
+SELECT pg_get_function_identity_arguments(0);
+ pg_get_function_identity_arguments
+------------------------------------
+
+(1 row)
+
+SELECT pg_get_function_result(0);
+ pg_get_function_result
+------------------------
+
+(1 row)
+
+SELECT pg_get_function_arg_default(0, 0);
+ pg_get_function_arg_default
+-----------------------------
+
+(1 row)
+
+SELECT pg_get_function_arg_default('pg_class'::regclass, 0);
+ pg_get_function_arg_default
+-----------------------------
+
+(1 row)
+
SELECT pg_get_ruledef(0);
SELECT pg_get_triggerdef(0);
SELECT pg_get_viewdef(0);
+SELECT pg_get_function_arguments(0);
+SELECT pg_get_function_identity_arguments(0);
+SELECT pg_get_function_result(0);
+SELECT pg_get_function_arg_default(0, 0);
+SELECT pg_get_function_arg_default('pg_class'::regclass, 0);