Reduce the need for frontend programs to include "postgres.h" by refactoring
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 27 Mar 2008 03:57:34 +0000 (03:57 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 27 Mar 2008 03:57:34 +0000 (03:57 +0000)
commit32bf9413b89d49773989b6bdac675cf3bdd64c90
tree361ff71b78ca790f4d8d5a5df68077e322b1c5d6
parent8fc7d48b35e60a012fa757c8cd388304c1d42af3
Reduce the need for frontend programs to include "postgres.h" by refactoring
inclusions in src/include/catalog/*.h files.  The main idea here is to push
function declarations for src/backend/catalog/*.c files into separate headers,
rather than sticking them into the corresponding catalog definition file as
has been done in the past.  This commit only carries out that idea fully for
pg_proc, pg_type and pg_conversion, but that's enough for the moment ---
if pg_list.h ever becomes unsafe for frontend code to include, we'll need
to work a bit more.

Zdenek Kotala
67 files changed:
src/backend/catalog/dependency.c
src/backend/catalog/heap.c
src/backend/catalog/namespace.c
src/backend/catalog/pg_aggregate.c
src/backend/catalog/pg_conversion.c
src/backend/catalog/pg_proc.c
src/backend/catalog/pg_type.c
src/backend/commands/conversioncmds.c
src/backend/commands/functioncmds.c
src/backend/commands/proclang.c
src/backend/commands/tablecmds.c
src/backend/commands/typecmds.c
src/backend/parser/keywords.c
src/backend/utils/hash/pg_crc.c
src/bin/pg_config/pg_config.c
src/bin/pg_controldata/pg_controldata.c
src/bin/pg_dump/common.c
src/bin/pg_dump/pg_dump.c
src/bin/psql/print.c
src/include/catalog/genbki.h [new file with mode: 0644]
src/include/catalog/pg_aggregate.h
src/include/catalog/pg_am.h
src/include/catalog/pg_amop.h
src/include/catalog/pg_amproc.h
src/include/catalog/pg_attrdef.h
src/include/catalog/pg_attribute.h
src/include/catalog/pg_auth_members.h
src/include/catalog/pg_authid.h
src/include/catalog/pg_autovacuum.h
src/include/catalog/pg_cast.h
src/include/catalog/pg_class.h
src/include/catalog/pg_constraint.h
src/include/catalog/pg_conversion.h
src/include/catalog/pg_conversion_fn.h [new file with mode: 0644]
src/include/catalog/pg_database.h
src/include/catalog/pg_depend.h
src/include/catalog/pg_description.h
src/include/catalog/pg_enum.h
src/include/catalog/pg_index.h
src/include/catalog/pg_inherits.h
src/include/catalog/pg_language.h
src/include/catalog/pg_largeobject.h
src/include/catalog/pg_listener.h
src/include/catalog/pg_namespace.h
src/include/catalog/pg_opclass.h
src/include/catalog/pg_operator.h
src/include/catalog/pg_opfamily.h
src/include/catalog/pg_pltemplate.h
src/include/catalog/pg_proc.h
src/include/catalog/pg_proc_fn.h [new file with mode: 0644]
src/include/catalog/pg_rewrite.h
src/include/catalog/pg_shdepend.h
src/include/catalog/pg_shdescription.h
src/include/catalog/pg_statistic.h
src/include/catalog/pg_tablespace.h
src/include/catalog/pg_trigger.h
src/include/catalog/pg_ts_config.h
src/include/catalog/pg_ts_config_map.h
src/include/catalog/pg_ts_dict.h
src/include/catalog/pg_ts_parser.h
src/include/catalog/pg_ts_template.h
src/include/catalog/pg_type.h
src/include/catalog/pg_type_fn.h [new file with mode: 0644]
src/include/commands/sequence.h
src/include/pg_config_manual.h
src/include/postgres.h
src/pl/plpgsql/src/pl_comp.c