--
-- time/1
--
create or replace function time(
  timestamp without time zone
) returns time as $$
timestamp_time$$ language plpgsql;


--
-- time/1
--
create or replace function time(
  interval
) returns time as $$
interval_time$$ language plpgsql;


--
-- time/2
--
create or replace function time(
  time without time zone,
  integer
) returns time as $$
time_scale$$ language plpgsql;


--
-- time/1
--
create or replace function time(
  timestamp with time zone
) returns time as $$
timestamptz_time$$ language plpgsql;


--
-- time/1
--
create or replace function time(
  time with time zone
) returns time as $$
timetz_time$$ language plpgsql;