1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
-- checks the minimum version version for C++ code
CREATE OR REPLACE FUNCTION min_lib_version(min_version TEXT)
RETURNS BOOLEAN AS
$BODY$
DECLARE val BOOLEAN;
BEGIN
WITH
current_version AS (SELECT string_to_array(regexp_replace((SELECT library FROM pgr_full_version()), '.*-', '', 'g'),'.')::int[] AS version),
asked_version AS (SELECT string_to_array(min_version, '.')::int[] AS version)
SELECT (current_version.version >= asked_version.version) FROM current_version, asked_version INTO val;
RETURN val;
END;
$BODY$
LANGUAGE plpgsql;
-- checks the minimum version version for SQL code
CREATE OR REPLACE FUNCTION min_version(min_version TEXT)
RETURNS BOOLEAN AS
$BODY$
DECLARE val BOOLEAN;
BEGIN
WITH
current_version AS (SELECT string_to_array(regexp_replace(pgr_version(), '-.*', '', 'g'),'.')::int[] AS version),
asked_version AS (SELECT string_to_array(min_version, '.')::int[] AS version)
SELECT (current_version.version >= asked_version.version) FROM current_version, asked_version INTO val;
RETURN val;
END;
$BODY$
LANGUAGE plpgsql;
|