CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: momjian@svr1.postgresql.org 03/12/01 17:52:38
Modified files:
src/backend/utils/adt: int.c int8.c numeric.c
src/include/catalog: pg_operator.h pg_proc.h
src/include/utils: builtins.h int8.h
src/test/regress/expected: create_operator.out
src/test/regress/sql: create_operator.sql
Log message:
Attached is a patch implementing factorial(), returning numeric. Points
to note:
1) arttype is numeric. I thought this was the best way of allowing
arbitarily large factorials, even though factorial(2^63) is a large
number. Happy to change to integers if this is overkill.
2) since we're accepting numeric arguments, the patch tests for floats.
If a numeric is passed with non-zero decimal portion, an error is raised
since (from memory) they are undefined.
Gavin Sherry