From 1264915af1cd1f47a34873360c4e88ae73a1bd33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=EA=A6=AB=EA=A6=B6=EA=A6=8F=EA=A7=80=EA=A6=A6?= =?UTF-8?q?=EA=A6=BF=EA=A6=A7=EA=A6=AE=EA=A6=91=EA=A6=A9=EA=A6=AD=EA=A7=80?= Date: Tue, 20 Jul 2021 00:11:56 +0800 Subject: Function to get list of just the service codes --- pikul.i | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'pikul.i') diff --git a/pikul.i b/pikul.i index 331cfcb..fca870a 100644 --- a/pikul.i +++ b/pikul.i @@ -17,6 +17,21 @@ %typemap(freearg) char *[] { free($1); } +%typemap(out) char ** { + int len = 0; + while ($1[len]) + len++; + SV **svs = malloc(len * sizeof(SV *)); + for (int i = 0; i < len; i++) { + svs[i] = sv_newmortal(); + sv_setpv((SV *)svs[i], $1[i]); + }; + AV *myav = av_make(len, svs); + free(svs); + $result = newRV_noinc((SV *)myav); + sv_2mortal($result); + argvi++; +} %typemap(in) char **[] { AV *items = (AV *)SvRV($input); @@ -43,6 +58,7 @@ %rename("%(strip:[pikul_])s") ""; void pikul_init(enum pikul_company, char *[]); +char **pikul_codes(const char *, const char *, double); double pikul_cost(const char *, const char *, double, const char *); char *pikul_order(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, int, -- cgit v1.2.3 From d7a0867335f3aef16baad0fe138f1d09ef29d928 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=EA=A6=AB=EA=A6=B6=EA=A6=8F=EA=A7=80=EA=A6=A6?= =?UTF-8?q?=EA=A6=BF=EA=A6=A7=EA=A6=AE=EA=A6=91=EA=A6=A9=EA=A6=AD=EA=A7=80?= Date: Tue, 20 Jul 2021 22:33:29 +0800 Subject: Function for listing services ready in HTML --- pikul.i | 2 ++ 1 file changed, 2 insertions(+) (limited to 'pikul.i') diff --git a/pikul.i b/pikul.i index fca870a..d217982 100644 --- a/pikul.i +++ b/pikul.i @@ -58,6 +58,8 @@ %rename("%(strip:[pikul_])s") ""; void pikul_init(enum pikul_company, char *[]); +char *pikul_html(const char *, const char *, double, const char *, const char *, const char *, const char *, + char *[], char *[]); char **pikul_codes(const char *, const char *, double); double pikul_cost(const char *, const char *, double, const char *); char *pikul_order(const char *, const char *, const char *, const char *, const char *, const char *, -- cgit v1.2.3 From f686ef14951df5f4c2a82bc6075bfd520e05c3de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=EA=A6=AB=EA=A6=B6=EA=A6=8F=EA=A7=80=EA=A6=A6?= =?UTF-8?q?=EA=A6=BF=EA=A6=A7=EA=A6=AE=EA=A6=91=EA=A6=A9=EA=A6=AD=EA=A7=80?= Date: Thu, 22 Jul 2021 17:04:07 +0800 Subject: pikul_codes shouldn't be needed --- pikul.i | 16 ---------------- 1 file changed, 16 deletions(-) (limited to 'pikul.i') diff --git a/pikul.i b/pikul.i index d217982..c39c6a3 100644 --- a/pikul.i +++ b/pikul.i @@ -17,21 +17,6 @@ %typemap(freearg) char *[] { free($1); } -%typemap(out) char ** { - int len = 0; - while ($1[len]) - len++; - SV **svs = malloc(len * sizeof(SV *)); - for (int i = 0; i < len; i++) { - svs[i] = sv_newmortal(); - sv_setpv((SV *)svs[i], $1[i]); - }; - AV *myav = av_make(len, svs); - free(svs); - $result = newRV_noinc((SV *)myav); - sv_2mortal($result); - argvi++; -} %typemap(in) char **[] { AV *items = (AV *)SvRV($input); @@ -60,7 +45,6 @@ void pikul_init(enum pikul_company, char *[]); char *pikul_html(const char *, const char *, double, const char *, const char *, const char *, const char *, char *[], char *[]); -char **pikul_codes(const char *, const char *, double); double pikul_cost(const char *, const char *, double, const char *); char *pikul_order(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, int, -- cgit v1.2.3 From 218418f3623da5f07cf8428d1d8687b9d5fbc4ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=EA=A6=AB=EA=A6=B6=EA=A6=8F=EA=A7=80=EA=A6=A6?= =?UTF-8?q?=EA=A6=BF=EA=A6=A7=EA=A6=AE=EA=A6=91=EA=A6=A9=EA=A6=AD=EA=A7=80?= Date: Sat, 24 Jul 2021 12:26:02 +0800 Subject: Each shipping info is retained in its own slot Slot/enum 0 is reserved for Pikul. libcurl WRITEFUNCTION callback userData parameter is now used for the shipping instance, but may also be used for something else in turns. --- pikul.i | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'pikul.i') diff --git a/pikul.i b/pikul.i index c39c6a3..ae59146 100644 --- a/pikul.i +++ b/pikul.i @@ -43,10 +43,10 @@ %rename("%(strip:[pikul_])s") ""; void pikul_init(enum pikul_company, char *[]); -char *pikul_html(const char *, const char *, double, const char *, const char *, const char *, const char *, +char *pikul_html(char *[], char *[], double, const char *, const char *, const char *, const char *, char *[], char *[]); -double pikul_cost(const char *, const char *, double, const char *); -char *pikul_order(const char *, const char *, const char *, const char *, const char *, const char *, - const char *, const char *, const char *, const char *, const char *, const char *, int, - char **[], double); +double pikul_cost(enum pikul_company, const char *, const char *, const char *, double); +char *pikul_order(enum pikul_company, const char *, const char *, const char *, const char *, const char *, + const char *, const char *, const char *, const char *, const char *, const char *, + const char *, int, char **[], double); void pikul_cleanup(); -- cgit v1.2.3