gooderp18绿色标准版
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 line
1.4KB

  1. /*-------------------------------------------------------------------------
  2. *
  3. * fmgrtab.h
  4. * The function manager's table of internal functions.
  5. *
  6. * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
  7. * Portions Copyright (c) 1994, Regents of the University of California
  8. *
  9. * src/include/utils/fmgrtab.h
  10. *
  11. *-------------------------------------------------------------------------
  12. */
  13. #ifndef FMGRTAB_H
  14. #define FMGRTAB_H
  15. #include "access/transam.h"
  16. #include "fmgr.h"
  17. /*
  18. * This table stores info about all the built-in functions (ie, functions
  19. * that are compiled into the Postgres executable).
  20. */
  21. typedef struct
  22. {
  23. Oid foid; /* OID of the function */
  24. short nargs; /* 0..FUNC_MAX_ARGS, or -1 if variable count */
  25. bool strict; /* T if function is "strict" */
  26. bool retset; /* T if function returns a set */
  27. const char *funcName; /* C name of the function */
  28. PGFunction func; /* pointer to compiled function */
  29. } FmgrBuiltin;
  30. extern const FmgrBuiltin fmgr_builtins[];
  31. extern const int fmgr_nbuiltins; /* number of entries in table */
  32. extern const Oid fmgr_last_builtin_oid; /* highest function OID in table */
  33. /*
  34. * Mapping from a builtin function's OID to its index in the fmgr_builtins
  35. * array. This is indexed from 0 through fmgr_last_builtin_oid.
  36. */
  37. #define InvalidOidBuiltinMapping PG_UINT16_MAX
  38. extern const uint16 fmgr_builtin_oid_index[];
  39. #endif /* FMGRTAB_H */
上海开阖软件有限公司 沪ICP备12045867号-1