mirror of
https://github.com/postgres/postgres.git
synced 2025-10-21 02:52:47 +03:00
Refactor code building relation options
Historically, the code to build relation options has been shaped the same way in multiple code paths by using a set of datums in input with the options parsed with a static table which is then filled with the option values. This introduces a new common routine in reloptions.c to do most of the legwork for the in-core code paths. Author: Amit Langote Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/CA+HiwqGsoSn_uTPPYT19WrtR7oYpYtv4CdS0xuedTKiHHWuk_g@mail.gmail.com
This commit is contained in:
@@ -296,6 +296,11 @@ extern void fillRelOptions(void *rdopts, Size basesize,
|
||||
relopt_value *options, int numoptions,
|
||||
bool validate,
|
||||
const relopt_parse_elt *elems, int nelems);
|
||||
extern void *build_reloptions(Datum reloptions, bool validate,
|
||||
relopt_kind kind,
|
||||
Size relopt_struct_size,
|
||||
const relopt_parse_elt *relopt_elems,
|
||||
int num_relopt_elems);
|
||||
|
||||
extern bytea *default_reloptions(Datum reloptions, bool validate,
|
||||
relopt_kind kind);
|
||||
|
Reference in New Issue
Block a user