Line data Source code
1 : #include "postgres.h"
2 :
3 : #include "fmgr.h"
4 : #include "plperl.h"
5 :
6 :
7 0 : PG_MODULE_MAGIC_EXT(
8 : .name = "bool_plperl",
9 : .version = PG_VERSION
10 : );
11 :
12 0 : PG_FUNCTION_INFO_V1(bool_to_plperl);
13 :
14 : Datum
15 0 : bool_to_plperl(PG_FUNCTION_ARGS)
16 : {
17 0 : dTHX;
18 0 : bool in = PG_GETARG_BOOL(0);
19 :
20 0 : return PointerGetDatum(in ? &PL_sv_yes : &PL_sv_no);
21 0 : }
22 :
23 :
24 0 : PG_FUNCTION_INFO_V1(plperl_to_bool);
25 :
26 : Datum
27 0 : plperl_to_bool(PG_FUNCTION_ARGS)
28 : {
29 0 : dTHX;
30 0 : SV *in = (SV *) PG_GETARG_POINTER(0);
31 :
32 0 : PG_RETURN_BOOL(SvTRUE(in));
33 0 : }
|