Hi,
While reading our documentation about pseudo-types [1] I noticed that it says:
"""
anyelement - Indicates that a function accepts any data type
anyarray - Indicates that a function accepts any array data type
"""
This may give an impression that anyelement and anyarray can be used
as an argument ("accepted") but not as a return value, while in fact
they can. In particular we have [2]:
"""
array_fill(anyelement, integer[] [, integer[] ] ) -> anyarray
unnest(anyarray) -> setof anyelement
"""
What makes section 8.21 even more confusing is the fact that a little
below we say:
"""
cstring - Indicates that a function accepts or *returns* a
null-terminated C string
"""
Should we be slightly more precise here?
[1]: https://www.postgresql.org/docs/current/datatype-pseudo.html
[2]: https://www.postgresql.org/docs/current/functions-array.html
--
Best regards,
Aleksander Alekseev