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