+extern Oid heap_create_with_catalog(const char *relname,
+ Oid relnamespace,
+ Oid reltablespace,
+ Oid relid,
+ Oid ownerid,
+ TupleDesc tupdesc,
+ char relkind,
+ bool shared_relation,
+ bool oidislocal,
+ int oidinhcount,
+ OnCommitAction oncommit,
+ bool allow_system_table_mods);
+
+extern void heap_drop_with_catalog(Oid relid);
+
+extern void heap_truncate(List *relids);
+
+extern void heap_truncate_check_FKs(List *relations, bool tempTables);
+
+extern List *heap_truncate_find_FKs(List *relationIds);
+
+extern List *AddRelationRawConstraints(Relation rel,
+ List *rawColDefaults,
+ List *rawConstraints);
+
+extern void StoreAttrDefault(Relation rel, AttrNumber attnum, char *adbin);
+
+extern Node *cookDefault(ParseState *pstate,
+ Node *raw_default,
+ Oid atttypid,
+ int32 atttypmod,
+ char *attname);
+
+extern int RemoveRelConstraints(Relation rel, const char *constrName,
+ DropBehavior behavior);
+
+extern void DeleteRelationTuple(Oid relid);
+extern void DeleteAttributeTuples(Oid relid);
+extern void RemoveAttributeById(Oid relid, AttrNumber attnum);
+extern void RemoveAttrDefault(Oid relid, AttrNumber attnum,
+ DropBehavior behavior, bool complain);
+extern void RemoveAttrDefaultById(Oid attrdefId);
+extern void RemoveStatistics(Oid relid, AttrNumber attnum);
+
+extern Form_pg_attribute SystemAttributeDefinition(AttrNumber attno,
+ bool relhasoids);
+
+extern Form_pg_attribute SystemAttributeByName(const char *attname,
+ bool relhasoids);
+
+extern void CheckAttributeNamesTypes(TupleDesc tupdesc, char relkind);
+
+extern void CheckAttributeType(const char *attname, Oid atttypid);
+
+#endif /* HEAP_H */