>> postgres=# \df acl*
>> List of fun
>> Schema | Name | Result data type |
>> ------------+-------------+------------------+----------------------------------
>> pg_catalog | aclcontains | boolean | aclitem[], aclitem
>> pg_catalog | acldefault | aclitem[] | "char", oid
>> pg_catalog | aclexplode | SETOF record | acl aclitem[], OUT grantor
>> oid, O
>> pg_catalog | aclinsert | aclitem[] | aclitem[], aclitem
>> pg_catalog | aclitemeq | boolean | aclitem, aclitem
>> pg_catalog | aclitemin | aclitem | cstring
>> pg_catalog | aclitemout | cstring | aclitem
>> pg_catalog | aclremove | aclitem[] | aclitem[], aclitem
>
> Some of them are definitely internal. For example, aclitemin and
> aclitemout are input and output functions respectively of the aclitem
> data type. I think they don't need to be documented and shouldn't have
> "pg_" prefix as they was created to maintenance aclitem data type.
Indeed, some are internal for managing the type itself. Maybe that
encompasses also "aclitemeq", not sure. I would see no harm in having them
documented though.
ISTM that acl{contains,default,explode,insert,remove} deserve a real doc.
--
Fabien.