From 87daae1143520309da299b78a8e7a68f141a268f Mon Sep 17 00:00:00 2001 From: Neil Conway Date: Tue, 28 Feb 2006 20:03:52 +0000 Subject: Allow PL/Python functions to return void, per gripe from James Robinson (I didn't use his patch, however). A void-returning PL/Python function must return None (from Python), which is translated into a void datum (and *not* NULL) for Postgres. I also added some regression tests for this functionality. --- src/pl/plpython/expected/plpython_function.out | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/pl/plpython/expected/plpython_function.out') diff --git a/src/pl/plpython/expected/plpython_function.out b/src/pl/plpython/expected/plpython_function.out index 516d0576899..dc52f4af17d 100644 --- a/src/pl/plpython/expected/plpython_function.out +++ b/src/pl/plpython/expected/plpython_function.out @@ -289,3 +289,14 @@ plan = plpy.prepare("SELECT $1 AS testvalue1, $2 AS testvalue2", ["text", "text" rv = plpy.execute(plan, u"\\x80", 1) return rv[0]["testvalue1"] ' LANGUAGE plpythonu; +-- Tests for functions that return void +CREATE FUNCTION test_void_func1() RETURNS void AS $$ +x = 10 +$$ LANGUAGE plpythonu; +-- illegal: can't return non-None value in void-returning func +CREATE FUNCTION test_void_func2() RETURNS void AS $$ +return 10 +$$ LANGUAGE plpythonu; +CREATE FUNCTION test_return_none() RETURNS int AS $$ +None +$$ LANGUAGE plpythonu; -- cgit v1.2.3