*** empty log message ***
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: awk.c,v 1.105 2007-01-25 14:10:03 bacon Exp $
|
||||
* $Id: awk.c,v 1.106 2007-02-01 08:38:22 bacon Exp $
|
||||
*/
|
||||
|
||||
#if defined(__BORLANDC__)
|
||||
@ -12,31 +12,31 @@
|
||||
static void __free_afn (void* awk, void* afn);
|
||||
|
||||
ase_awk_t* ase_awk_open (
|
||||
const ase_awk_sysfns_t* sysfns, void* custom_data, int* errnum)
|
||||
const ase_awk_prmfns_t* prmfns, void* custom_data, int* errnum)
|
||||
{
|
||||
ase_awk_t* awk;
|
||||
|
||||
if (sysfns == ASE_NULL ||
|
||||
sysfns->malloc == ASE_NULL ||
|
||||
sysfns->free == ASE_NULL ||
|
||||
sysfns->is_upper == ASE_NULL ||
|
||||
sysfns->is_lower == ASE_NULL ||
|
||||
sysfns->is_alpha == ASE_NULL ||
|
||||
sysfns->is_digit == ASE_NULL ||
|
||||
sysfns->is_xdigit == ASE_NULL ||
|
||||
sysfns->is_alnum == ASE_NULL ||
|
||||
sysfns->is_space == ASE_NULL ||
|
||||
sysfns->is_print == ASE_NULL ||
|
||||
sysfns->is_graph == ASE_NULL ||
|
||||
sysfns->is_cntrl == ASE_NULL ||
|
||||
sysfns->is_punct == ASE_NULL ||
|
||||
sysfns->to_upper == ASE_NULL ||
|
||||
sysfns->to_lower == ASE_NULL ||
|
||||
sysfns->pow == ASE_NULL ||
|
||||
sysfns->sprintf == ASE_NULL ||
|
||||
sysfns->aprintf == ASE_NULL ||
|
||||
sysfns->dprintf == ASE_NULL ||
|
||||
sysfns->abort == ASE_NULL)
|
||||
if (prmfns == ASE_NULL ||
|
||||
prmfns->malloc == ASE_NULL ||
|
||||
prmfns->free == ASE_NULL ||
|
||||
prmfns->is_upper == ASE_NULL ||
|
||||
prmfns->is_lower == ASE_NULL ||
|
||||
prmfns->is_alpha == ASE_NULL ||
|
||||
prmfns->is_digit == ASE_NULL ||
|
||||
prmfns->is_xdigit == ASE_NULL ||
|
||||
prmfns->is_alnum == ASE_NULL ||
|
||||
prmfns->is_space == ASE_NULL ||
|
||||
prmfns->is_print == ASE_NULL ||
|
||||
prmfns->is_graph == ASE_NULL ||
|
||||
prmfns->is_cntrl == ASE_NULL ||
|
||||
prmfns->is_punct == ASE_NULL ||
|
||||
prmfns->to_upper == ASE_NULL ||
|
||||
prmfns->to_lower == ASE_NULL ||
|
||||
prmfns->pow == ASE_NULL ||
|
||||
prmfns->sprintf == ASE_NULL ||
|
||||
prmfns->aprintf == ASE_NULL ||
|
||||
prmfns->dprintf == ASE_NULL ||
|
||||
prmfns->abort == ASE_NULL)
|
||||
{
|
||||
*errnum = ASE_AWK_ESYSFNS;
|
||||
return ASE_NULL;
|
||||
@ -45,8 +45,8 @@ ase_awk_t* ase_awk_open (
|
||||
#if defined(_WIN32) && defined(_MSC_VER) && defined(_DEBUG)
|
||||
awk = (ase_awk_t*) malloc (ASE_SIZEOF(ase_awk_t));
|
||||
#else
|
||||
awk = (ase_awk_t*) sysfns->malloc (
|
||||
ASE_SIZEOF(ase_awk_t), sysfns->custom_data);
|
||||
awk = (ase_awk_t*) prmfns->malloc (
|
||||
ASE_SIZEOF(ase_awk_t), prmfns->custom_data);
|
||||
#endif
|
||||
if (awk == ASE_NULL)
|
||||
{
|
||||
@ -58,13 +58,13 @@ ase_awk_t* ase_awk_open (
|
||||
* fully initialized yet */
|
||||
ase_awk_memset (awk, 0, ASE_SIZEOF(ase_awk_t));
|
||||
|
||||
if (sysfns->memcpy == ASE_NULL)
|
||||
if (prmfns->memcpy == ASE_NULL)
|
||||
{
|
||||
ase_awk_memcpy (&awk->sysfns, sysfns, ASE_SIZEOF(awk->sysfns));
|
||||
awk->sysfns.memcpy = ase_awk_memcpy;
|
||||
ase_awk_memcpy (&awk->prmfns, prmfns, ASE_SIZEOF(awk->prmfns));
|
||||
awk->prmfns.memcpy = ase_awk_memcpy;
|
||||
}
|
||||
else sysfns->memcpy (&awk->sysfns, sysfns, ASE_SIZEOF(awk->sysfns));
|
||||
if (sysfns->memset == ASE_NULL) awk->sysfns.memset = ase_awk_memset;
|
||||
else prmfns->memcpy (&awk->prmfns, prmfns, ASE_SIZEOF(awk->prmfns));
|
||||
if (prmfns->memset == ASE_NULL) awk->prmfns.memset = ase_awk_memset;
|
||||
|
||||
if (ase_awk_str_open (&awk->token.name, 128, awk) == ASE_NULL)
|
||||
{
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: awk.h,v 1.185 2007-01-25 14:10:03 bacon Exp $
|
||||
* $Id: awk.h,v 1.186 2007-02-01 08:38:22 bacon Exp $
|
||||
*/
|
||||
|
||||
#ifndef _ASE_AWK_AWK_H_
|
||||
@ -13,7 +13,7 @@ typedef struct ase_awk_run_t ase_awk_run_t;
|
||||
typedef struct ase_awk_val_t ase_awk_val_t;
|
||||
typedef struct ase_awk_extio_t ase_awk_extio_t;
|
||||
|
||||
typedef struct ase_awk_sysfns_t ase_awk_sysfns_t;
|
||||
typedef struct ase_awk_prmfns_t ase_awk_prmfns_t;
|
||||
typedef struct ase_awk_srcios_t ase_awk_srcios_t;
|
||||
typedef struct ase_awk_runios_t ase_awk_runios_t;
|
||||
typedef struct ase_awk_runcbs_t ase_awk_runcbs_t;
|
||||
@ -68,7 +68,7 @@ struct ase_awk_extio_t
|
||||
ase_awk_extio_t* next;
|
||||
};
|
||||
|
||||
struct ase_awk_sysfns_t
|
||||
struct ase_awk_prmfns_t
|
||||
{
|
||||
/* memory allocation/deallocation */
|
||||
ase_awk_malloc_t malloc; /* required */
|
||||
@ -402,7 +402,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
ase_awk_t* ase_awk_open (
|
||||
const ase_awk_sysfns_t* sysfns, void* custom_data, int* errnum);
|
||||
const ase_awk_prmfns_t* prmfns, void* custom_data, int* errnum);
|
||||
int ase_awk_close (ase_awk_t* awk);
|
||||
int ase_awk_clear (ase_awk_t* awk);
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: awk_i.h,v 1.98 2007-01-25 14:10:03 bacon Exp $
|
||||
* $Id: awk_i.h,v 1.99 2007-02-01 08:38:22 bacon Exp $
|
||||
*/
|
||||
|
||||
#ifndef _ASE_AWK_AWKI_H_
|
||||
@ -45,41 +45,41 @@ typedef struct ase_awk_tree_t ase_awk_tree_t;
|
||||
#define ASE_AWK_FREE(awk,ptr) free (ptr)
|
||||
#else
|
||||
#define ASE_AWK_MALLOC(awk,size) \
|
||||
(awk)->sysfns.malloc (size, (awk)->sysfns.custom_data)
|
||||
(awk)->prmfns.malloc (size, (awk)->prmfns.custom_data)
|
||||
#define ASE_AWK_REALLOC(awk,ptr,size) \
|
||||
(awk)->sysfns.realloc (ptr, size, (awk)->sysfns.custom_data)
|
||||
(awk)->prmfns.realloc (ptr, size, (awk)->prmfns.custom_data)
|
||||
#define ASE_AWK_FREE(awk,ptr) \
|
||||
(awk)->sysfns.free (ptr, (awk)->sysfns.custom_data)
|
||||
(awk)->prmfns.free (ptr, (awk)->prmfns.custom_data)
|
||||
#endif
|
||||
|
||||
#define ASE_AWK_LOCK(awk) \
|
||||
do { \
|
||||
if ((awk)->sysfns.lock != ASE_NULL) \
|
||||
(awk)->sysfns.lock ((awk)->sysfns.custom_data); \
|
||||
if ((awk)->prmfns.lock != ASE_NULL) \
|
||||
(awk)->prmfns.lock ((awk)->prmfns.custom_data); \
|
||||
} while (0)
|
||||
|
||||
#define ASE_AWK_UNLOCK(awk) \
|
||||
do { \
|
||||
if ((awk)->sysfns.unlock != ASE_NULL) \
|
||||
(awk)->sysfns.unlock ((awk)->sysfns.custom_data); \
|
||||
if ((awk)->prmfns.unlock != ASE_NULL) \
|
||||
(awk)->prmfns.unlock ((awk)->prmfns.custom_data); \
|
||||
} while (0)
|
||||
|
||||
#define ASE_AWK_ISUPPER(awk,c) (awk)->sysfns.is_upper(c)
|
||||
#define ASE_AWK_ISLOWER(awk,c) (awk)->sysfns.is_lower(c)
|
||||
#define ASE_AWK_ISALPHA(awk,c) (awk)->sysfns.is_alpha(c)
|
||||
#define ASE_AWK_ISDIGIT(awk,c) (awk)->sysfns.is_digit(c)
|
||||
#define ASE_AWK_ISXDIGIT(awk,c) (awk)->sysfns.is_xdigit(c)
|
||||
#define ASE_AWK_ISALNUM(awk,c) (awk)->sysfns.is_alnum(c)
|
||||
#define ASE_AWK_ISSPACE(awk,c) (awk)->sysfns.is_space(c)
|
||||
#define ASE_AWK_ISPRINT(awk,c) (awk)->sysfns.is_print(c)
|
||||
#define ASE_AWK_ISGRAPH(awk,c) (awk)->sysfns.is_graph(c)
|
||||
#define ASE_AWK_ISCNTRL(awk,c) (awk)->sysfns.is_cntrl(c)
|
||||
#define ASE_AWK_ISPUNCT(awk,c) (awk)->sysfns.is_punct(c)
|
||||
#define ASE_AWK_TOUPPER(awk,c) (awk)->sysfns.to_upper(c)
|
||||
#define ASE_AWK_TOLOWER(awk,c) (awk)->sysfns.to_lower(c)
|
||||
#define ASE_AWK_ISUPPER(awk,c) (awk)->prmfns.is_upper(c)
|
||||
#define ASE_AWK_ISLOWER(awk,c) (awk)->prmfns.is_lower(c)
|
||||
#define ASE_AWK_ISALPHA(awk,c) (awk)->prmfns.is_alpha(c)
|
||||
#define ASE_AWK_ISDIGIT(awk,c) (awk)->prmfns.is_digit(c)
|
||||
#define ASE_AWK_ISXDIGIT(awk,c) (awk)->prmfns.is_xdigit(c)
|
||||
#define ASE_AWK_ISALNUM(awk,c) (awk)->prmfns.is_alnum(c)
|
||||
#define ASE_AWK_ISSPACE(awk,c) (awk)->prmfns.is_space(c)
|
||||
#define ASE_AWK_ISPRINT(awk,c) (awk)->prmfns.is_print(c)
|
||||
#define ASE_AWK_ISGRAPH(awk,c) (awk)->prmfns.is_graph(c)
|
||||
#define ASE_AWK_ISCNTRL(awk,c) (awk)->prmfns.is_cntrl(c)
|
||||
#define ASE_AWK_ISPUNCT(awk,c) (awk)->prmfns.is_punct(c)
|
||||
#define ASE_AWK_TOUPPER(awk,c) (awk)->prmfns.to_upper(c)
|
||||
#define ASE_AWK_TOLOWER(awk,c) (awk)->prmfns.to_lower(c)
|
||||
|
||||
#define ASE_AWK_MEMCPY(awk,dst,src,len) (awk)->sysfns.memcpy (dst, src, len)
|
||||
#define ASE_AWK_MEMSET(awk,dst,val,len) (awk)->sysfns.memset (dst, val, len)
|
||||
#define ASE_AWK_MEMCPY(awk,dst,src,len) (awk)->prmfns.memcpy (dst, src, len)
|
||||
#define ASE_AWK_MEMSET(awk,dst,val,len) (awk)->prmfns.memset (dst, val, len)
|
||||
|
||||
struct ase_awk_tree_t
|
||||
{
|
||||
@ -96,7 +96,7 @@ struct ase_awk_tree_t
|
||||
|
||||
struct ase_awk_t
|
||||
{
|
||||
ase_awk_sysfns_t sysfns;
|
||||
ase_awk_prmfns_t prmfns;
|
||||
void* custom_data;
|
||||
|
||||
/* options */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: func.c,v 1.91 2007-01-25 14:10:03 bacon Exp $
|
||||
* $Id: func.c,v 1.92 2007-02-01 08:38:22 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -51,7 +51,7 @@ void* ase_awk_addbfn (
|
||||
|
||||
if (ase_awk_getbfn (awk, name, name_len) != ASE_NULL)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("'%.*s' added already"), name_len, name);
|
||||
ase_awk_seterror (awk, ASE_AWK_EEXIST, 0, awk->errmsg);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: jni.c,v 1.64 2007-02-01 07:23:59 bacon Exp $
|
||||
* $Id: jni.c,v 1.65 2007-02-01 08:38:22 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
@ -239,36 +239,36 @@ JNIEXPORT void JNICALL Java_ase_awk_Awk_open (JNIEnv* env, jobject obj)
|
||||
jclass class;
|
||||
jfieldID handle;
|
||||
ase_awk_t* awk;
|
||||
ase_awk_sysfns_t sysfns;
|
||||
ase_awk_prmfns_t prmfns;
|
||||
awk_data_t* awk_data;
|
||||
int opt, errnum;
|
||||
|
||||
memset (&sysfns, 0, sizeof(sysfns));
|
||||
sysfns.malloc = awk_malloc;
|
||||
sysfns.realloc = awk_realloc;
|
||||
sysfns.free = awk_free;
|
||||
memset (&prmfns, 0, sizeof(prmfns));
|
||||
prmfns.malloc = awk_malloc;
|
||||
prmfns.realloc = awk_realloc;
|
||||
prmfns.free = awk_free;
|
||||
|
||||
sysfns.is_upper = iswupper;
|
||||
sysfns.is_lower = iswlower;
|
||||
sysfns.is_alpha = iswalpha;
|
||||
sysfns.is_digit = iswdigit;
|
||||
sysfns.is_xdigit = iswxdigit;
|
||||
sysfns.is_alnum = iswalnum;
|
||||
sysfns.is_space = iswspace;
|
||||
sysfns.is_print = iswprint;
|
||||
sysfns.is_graph = iswgraph;
|
||||
sysfns.is_cntrl = iswcntrl;
|
||||
sysfns.is_punct = iswpunct;
|
||||
sysfns.to_upper = towupper;
|
||||
sysfns.to_lower = towlower;
|
||||
prmfns.is_upper = iswupper;
|
||||
prmfns.is_lower = iswlower;
|
||||
prmfns.is_alpha = iswalpha;
|
||||
prmfns.is_digit = iswdigit;
|
||||
prmfns.is_xdigit = iswxdigit;
|
||||
prmfns.is_alnum = iswalnum;
|
||||
prmfns.is_space = iswspace;
|
||||
prmfns.is_print = iswprint;
|
||||
prmfns.is_graph = iswgraph;
|
||||
prmfns.is_cntrl = iswcntrl;
|
||||
prmfns.is_punct = iswpunct;
|
||||
prmfns.to_upper = towupper;
|
||||
prmfns.to_lower = towlower;
|
||||
|
||||
sysfns.memcpy = memcpy;
|
||||
sysfns.memset = memset;
|
||||
sysfns.pow = awk_pow;
|
||||
sysfns.sprintf = awk_sprintf;
|
||||
sysfns.aprintf = awk_aprintf;
|
||||
sysfns.dprintf = awk_dprintf;
|
||||
sysfns.abort = awk_abort;
|
||||
prmfns.memcpy = memcpy;
|
||||
prmfns.memset = memset;
|
||||
prmfns.pow = awk_pow;
|
||||
prmfns.sprintf = awk_sprintf;
|
||||
prmfns.aprintf = awk_aprintf;
|
||||
prmfns.dprintf = awk_dprintf;
|
||||
prmfns.abort = awk_abort;
|
||||
|
||||
awk_data = (awk_data_t*) malloc (sizeof(awk_data_t));
|
||||
if (awk_data == NULL)
|
||||
@ -283,10 +283,10 @@ JNIEXPORT void JNICALL Java_ase_awk_Awk_open (JNIEnv* env, jobject obj)
|
||||
|
||||
memset (awk_data, 0, sizeof(awk_data_t));
|
||||
|
||||
awk = ase_awk_open (&sysfns, awk_data, &errnum);
|
||||
awk = ase_awk_open (&prmfns, awk_data, &errnum);
|
||||
if (awk == NULL)
|
||||
{
|
||||
free (sysfns.custom_data);
|
||||
free (prmfns.custom_data);
|
||||
throw_exception (
|
||||
env,
|
||||
ase_awk_geterrstr(errnum),
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: misc.c,v 1.48 2006-12-16 16:12:07 bacon Exp $
|
||||
* $Id: misc.c,v 1.49 2007-02-01 08:38:23 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -1105,18 +1105,18 @@ int ase_awk_assertfail (ase_awk_t* awk,
|
||||
{
|
||||
if (desc == ASE_NULL)
|
||||
{
|
||||
awk->sysfns.aprintf (
|
||||
awk->prmfns.aprintf (
|
||||
ASE_T("ASSERTION FAILURE AT FILE %s LINE %d\n%s\n"),
|
||||
file, line, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
awk->sysfns.aprintf (
|
||||
awk->prmfns.aprintf (
|
||||
ASE_T("ASSERTION FAILURE AT FILE %s LINE %d\n%s\n\nDESCRIPTION:\n%s\n"),
|
||||
file, line, expr, desc);
|
||||
|
||||
}
|
||||
awk->sysfns.abort (awk->sysfns.custom_data);
|
||||
awk->prmfns.abort (awk->prmfns.custom_data);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: parse.c,v 1.239 2007-01-07 07:26:16 bacon Exp $
|
||||
* $Id: parse.c,v 1.240 2007-02-01 08:38:23 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -331,7 +331,7 @@ static struct __bvent __bvtab[] =
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
awk->sysfns.sprintf ( \
|
||||
awk->prmfns.sprintf ( \
|
||||
(awk)->errmsg, ASE_COUNTOF((awk)->errmsg), \
|
||||
msg, \
|
||||
ASE_AWK_STR_LEN(&(awk)->token.name), \
|
||||
@ -703,7 +703,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
}
|
||||
else
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("'%.*s' not a valid function name"),
|
||||
ASE_AWK_STR_LEN(&awk->token.name),
|
||||
@ -722,7 +722,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
/* check if it is a builtin function */
|
||||
if (ase_awk_getbfn (awk, name, name_len) != ASE_NULL)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("built-in function '%.*s' redefined"),
|
||||
name_len, name);
|
||||
@ -737,7 +737,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
if (ase_awk_map_get(&awk->tree.afns, name, name_len) != ASE_NULL)
|
||||
{
|
||||
/* the function is defined previously */
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("function '%.*s' redefined"),
|
||||
name_len, name);
|
||||
@ -757,7 +757,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
g = ase_awk_tab_find (&awk->parse.globals, 0, name, name_len);
|
||||
if (g != (ase_size_t)-1)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("global variable '%.*s' redefined"),
|
||||
name_len, name);
|
||||
@ -844,7 +844,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
}
|
||||
else
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("'%.*s' not a valid parameter name"),
|
||||
ASE_AWK_STR_LEN(&awk->token.name),
|
||||
@ -870,7 +870,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
ASE_AWK_FREE (awk, name_dup);
|
||||
ase_awk_tab_clear (&awk->parse.params);
|
||||
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("conflicting parameter '%.*s' with the function"),
|
||||
param_len, param);
|
||||
@ -897,7 +897,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
ASE_AWK_FREE (awk, name_dup);
|
||||
ase_awk_tab_clear (&awk->parse.params);
|
||||
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("duplicate parameter '%.*s'"),
|
||||
param_len, param);
|
||||
@ -985,7 +985,7 @@ static ase_awk_nde_t* __parse_function (ase_awk_t* awk)
|
||||
}
|
||||
else
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("'%.*s' not a valid start of the function body"),
|
||||
ASE_AWK_STR_LEN(&awk->token.name),
|
||||
@ -1328,7 +1328,7 @@ static ase_awk_t* __add_global (
|
||||
/* check if it conflict with a builtin function name */
|
||||
if (ase_awk_getbfn (awk, name, len) != ASE_NULL)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("built-in function '%.*s' redefined"),
|
||||
len, name);
|
||||
@ -1341,7 +1341,7 @@ static ase_awk_t* __add_global (
|
||||
if (ase_awk_map_get (
|
||||
&awk->tree.afns, name, len) != ASE_NULL)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("function '%.*s' redefined"),
|
||||
len, name);
|
||||
@ -1355,7 +1355,7 @@ static ase_awk_t* __add_global (
|
||||
if (ase_awk_tab_find (
|
||||
&awk->parse.globals, 0, name, len) != (ase_size_t)-1)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("duplicate global variable '%.*s'"),
|
||||
len, name);
|
||||
@ -1395,7 +1395,7 @@ static ase_awk_t* __collect_globals (ase_awk_t* awk)
|
||||
}
|
||||
else
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("'%.*s' not a valid variable name"),
|
||||
ASE_AWK_STR_LEN(&awk->token.name),
|
||||
@ -1453,7 +1453,7 @@ static ase_awk_t* __collect_locals (ase_awk_t* awk, ase_size_t nlocals)
|
||||
}
|
||||
else
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("'%.*s' not a valid variable name"),
|
||||
ASE_AWK_STR_LEN(&awk->token.name),
|
||||
@ -1476,7 +1476,7 @@ static ase_awk_t* __collect_locals (ase_awk_t* awk, ase_size_t nlocals)
|
||||
/* check if it conflict with a builtin function name */
|
||||
if (ase_awk_getbfn (awk, local, local_len) != ASE_NULL)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("built-in function '%.*s' redefined"),
|
||||
local_len, local);
|
||||
@ -1491,7 +1491,7 @@ static ase_awk_t* __collect_locals (ase_awk_t* awk, ase_size_t nlocals)
|
||||
if (ase_awk_map_get (
|
||||
&awk->tree.afns, local, local_len) != ASE_NULL)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("function '%.*s' redefined"),
|
||||
local_len, local);
|
||||
@ -1507,7 +1507,7 @@ static ase_awk_t* __collect_locals (ase_awk_t* awk, ase_size_t nlocals)
|
||||
if (ase_awk_tab_find (&awk->parse.params,
|
||||
0, local, local_len) != (ase_size_t)-1)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("parameter '%.*s' redefined"),
|
||||
local_len, local);
|
||||
@ -1523,7 +1523,7 @@ static ase_awk_t* __collect_locals (ase_awk_t* awk, ase_size_t nlocals)
|
||||
((awk->option & ASE_AWK_SHADING)? nlocals: 0),
|
||||
local, local_len) != (ase_size_t)-1)
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("duplicate local variable '%.*s'"),
|
||||
local_len, local);
|
||||
@ -2948,7 +2948,7 @@ static ase_awk_nde_t* __parse_primary_ident (ase_awk_t* awk, ase_size_t line)
|
||||
/* built-in function should be in the form
|
||||
* of the function call */
|
||||
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("function name '%.*s' without a left parenthesis"),
|
||||
name_len, name_dup);
|
||||
@ -3059,7 +3059,7 @@ static ase_awk_nde_t* __parse_primary_ident (ase_awk_t* awk, ase_size_t line)
|
||||
return (ase_awk_nde_t*)nde;
|
||||
}
|
||||
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("undefined identifier '%.*s'"),
|
||||
name_len, name_dup);
|
||||
@ -3202,7 +3202,7 @@ static ase_awk_nde_t* __parse_hashidx (
|
||||
ase_awk_clrpt (awk, idx);
|
||||
ASE_AWK_FREE (awk, nde);
|
||||
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("undefined identifier '%.*s'"), name_len, name);
|
||||
ase_awk_seterror (awk, ASE_AWK_EUNDEF, line, awk->errmsg);
|
||||
@ -4585,7 +4585,7 @@ static int __get_token (ase_awk_t* awk)
|
||||
}
|
||||
else
|
||||
{
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
awk->errmsg, ASE_COUNTOF(awk->errmsg),
|
||||
ASE_T("invalid character '%c'"), c);
|
||||
ase_awk_seterror (
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: rec.c,v 1.12 2007-01-02 12:25:18 bacon Exp $
|
||||
* $Id: rec.c,v 1.13 2007-02-01 08:38:23 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -303,7 +303,7 @@ static int __recomp_record_fields (
|
||||
* number of fields that the current record can hold,
|
||||
* the field spaces are resized */
|
||||
|
||||
if (run->awk->sysfns.realloc != ASE_NULL)
|
||||
if (run->awk->prmfns.realloc != ASE_NULL)
|
||||
{
|
||||
tmp = ASE_AWK_REALLOC (
|
||||
run->awk, run->inrec.flds,
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: rex.c,v 1.54 2007-01-06 15:45:50 bacon Exp $
|
||||
* $Id: rex.c,v 1.55 2007-02-01 08:38:23 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -714,7 +714,7 @@ static int __build_charset (__builder_t* builder, struct __code_t* cmd)
|
||||
{
|
||||
/* invalid range */
|
||||
#ifdef DEBUG_REX
|
||||
builder->awk->sysfns.dprintf (
|
||||
builder->awk->prmfns.dprintf (
|
||||
ASE_T("__build_charset: invalid character set range\n"));
|
||||
#endif
|
||||
builder->errnum = ASE_AWK_EREXCRANGE;
|
||||
@ -747,7 +747,7 @@ static int __build_cclass (__builder_t* builder, ase_char_t* cc)
|
||||
{
|
||||
/* wrong class name */
|
||||
#ifdef DEBUG_REX
|
||||
builder->awk->sysfns.dprintf (
|
||||
builder->awk->prmfns.dprintf (
|
||||
ASE_T("__build_cclass: wrong class name\n"));
|
||||
#endif
|
||||
builder->errnum = ASE_AWK_EREXCCLASS;
|
||||
@ -761,7 +761,7 @@ static int __build_cclass (__builder_t* builder, ase_char_t* cc)
|
||||
builder->ptn.curc.value != ASE_T(':'))
|
||||
{
|
||||
#ifdef BUILD_REX
|
||||
builder->awk->sysfns.dprintf (
|
||||
builder->awk->prmfns.dprintf (
|
||||
ASE_T("__build_cclass: a colon(:) expected\n"));
|
||||
#endif
|
||||
builder->errnum = ASE_AWK_EREXCOLON;
|
||||
@ -775,7 +775,7 @@ static int __build_cclass (__builder_t* builder, ase_char_t* cc)
|
||||
builder->ptn.curc.value != ASE_T(']'))
|
||||
{
|
||||
#ifdef DEBUG_REX
|
||||
builder->awk->sysfns.dprintf (
|
||||
builder->awk->prmfns.dprintf (
|
||||
ASE_T("__build_cclass: ] expected\n"));
|
||||
#endif
|
||||
builder->errnum = ASE_AWK_EREXRBRACKET;
|
||||
@ -956,7 +956,7 @@ static int __add_code (__builder_t* builder, void* data, ase_size_t len)
|
||||
if (capa == 0) capa = DEF_CODE_CAPA;
|
||||
while (len > capa - builder->code.size) { capa = capa * 2; }
|
||||
|
||||
if (builder->awk->sysfns.realloc != ASE_NULL)
|
||||
if (builder->awk->prmfns.realloc != ASE_NULL)
|
||||
{
|
||||
tmp = (ase_byte_t*) ASE_AWK_REALLOC (
|
||||
builder->awk, builder->code.buf, capa);
|
||||
@ -1023,7 +1023,7 @@ static const ase_byte_t* __match_pattern (
|
||||
el = *(ase_size_t*)p; p += ASE_SIZEOF(el);
|
||||
|
||||
#ifdef BUILD_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_pattern: NB = %u, EL = %u\n"),
|
||||
(unsigned)nb, (unsigned)el);
|
||||
#endif
|
||||
@ -1211,7 +1211,7 @@ static const ase_byte_t* __match_any_char (
|
||||
}
|
||||
|
||||
#ifdef BUILD_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_any_char: lbound = %u, ubound = %u\n"),
|
||||
(unsigned int)lbound, (unsigned int)ubound);
|
||||
#endif
|
||||
@ -1224,7 +1224,7 @@ static const ase_byte_t* __match_any_char (
|
||||
}
|
||||
|
||||
#ifdef BUILD_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_any_char: max si = %u\n"), (unsigned)si);
|
||||
#endif
|
||||
|
||||
@ -1284,7 +1284,7 @@ static const ase_byte_t* __match_ord_char (
|
||||
}
|
||||
|
||||
#ifdef BUILD_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_ord_char: cc = %c, lbound = %u, ubound = %u\n"),
|
||||
cc, (unsigned int)lbound, (unsigned int)ubound);
|
||||
#endif
|
||||
@ -1299,7 +1299,7 @@ static const ase_byte_t* __match_ord_char (
|
||||
{
|
||||
if (&mat->match_ptr[si] >= matcher->match.str.end) break;
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_ord_char: <ignorecase> %c %c\n"),
|
||||
cc, mat->match_ptr[si]);
|
||||
#endif
|
||||
@ -1313,7 +1313,7 @@ static const ase_byte_t* __match_ord_char (
|
||||
{
|
||||
if (&mat->match_ptr[si] >= matcher->match.str.end) break;
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_ord_char: %c %c\n"),
|
||||
cc, mat->match_ptr[si]);
|
||||
#endif
|
||||
@ -1323,7 +1323,7 @@ static const ase_byte_t* __match_ord_char (
|
||||
}
|
||||
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_ord_char: max occurrences=%u, lbound=%u, ubound=%u\n"),
|
||||
(unsigned)si, (unsigned)lbound, (unsigned)ubound);
|
||||
#endif
|
||||
@ -1355,7 +1355,7 @@ static const ase_byte_t* __match_charset (
|
||||
csl = *(ase_size_t*)p; p += ASE_SIZEOF(csl);
|
||||
|
||||
#ifdef BUILD_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_charset: lbound = %u, ubound = %u\n"),
|
||||
(unsigned int)lbound, (unsigned int)ubound);
|
||||
#endif
|
||||
@ -1380,7 +1380,7 @@ static const ase_byte_t* __match_charset (
|
||||
p = p + csl - (ASE_SIZEOF(csc) + ASE_SIZEOF(csl));
|
||||
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_charset: max occurrences=%u, lbound=%u, ubound=%u\n"),
|
||||
(unsigned)si, (unsigned)lbound, (unsigned)ubound);
|
||||
#endif
|
||||
@ -1493,7 +1493,7 @@ static const ase_byte_t* __match_group (
|
||||
mat2.branch_end = mat->branch_end;
|
||||
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_group: GROUP si=%d [%s]\n"),
|
||||
(unsigned)si, mat->match_ptr);
|
||||
#endif
|
||||
@ -1594,7 +1594,7 @@ static const ase_byte_t* __match_occurrences (
|
||||
mat2.branch_end = mat->branch_end;
|
||||
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match occurrences: si=%u [%s]\n"),
|
||||
(unsigned)si, mat->match_ptr);
|
||||
#endif
|
||||
@ -1634,7 +1634,7 @@ static ase_bool_t __test_charset (
|
||||
if (matcher->ignorecase)
|
||||
c1 = ASE_AWK_TOUPPER(matcher->awk, c1);
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_charset: <one> %c %c\n"), c, c1);
|
||||
#endif
|
||||
if (c == c1) return ase_true;
|
||||
@ -1651,7 +1651,7 @@ static ase_bool_t __test_charset (
|
||||
c2 = ASE_AWK_TOUPPER(matcher->awk, c2);
|
||||
}
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_charset: <range> %c %c-%c\n"), c, c1, c2);
|
||||
#endif
|
||||
if (c >= c1 && c <= c2) return ase_true;
|
||||
@ -1660,7 +1660,7 @@ static ase_bool_t __test_charset (
|
||||
{
|
||||
c1 = *(const ase_char_t*)p;
|
||||
#ifdef DEBUG_REX
|
||||
matcher->awk->sysfns.dprintf (
|
||||
matcher->awk->prmfns.dprintf (
|
||||
ASE_T("__match_charset: <class> %c %s\n"),
|
||||
c, __char_class[c1].name);
|
||||
#endif
|
||||
@ -1745,7 +1745,7 @@ static ase_bool_t __cc_isxdigit (ase_awk_t* awk, ase_char_t c)
|
||||
void ase_awk_printrex (ase_awk_t* awk, void* rex)
|
||||
{
|
||||
__print_pattern (rex);
|
||||
awk->sysfns.dprintf (ASE_T("\n"));
|
||||
awk->prmfns.dprintf (ASE_T("\n"));
|
||||
}
|
||||
|
||||
static const ase_byte_t* __print_pattern (const ase_byte_t* p)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: run.c,v 1.322 2007-01-30 10:55:27 bacon Exp $
|
||||
* $Id: run.c,v 1.323 2007-02-01 08:38:23 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -212,9 +212,9 @@ typedef ase_awk_val_t* (*eval_expr_t) (ase_awk_run_t* run, ase_awk_nde_t* nde);
|
||||
static int __printval (ase_awk_pair_t* pair, void* arg)
|
||||
{
|
||||
ase_awk_run_t* run = (ase_awk_run_t*)arg;
|
||||
run->awk->sysfns.dprintf (ASE_T("%s = "), (const ase_char_t*)pair->key);
|
||||
run->awk->prmfns.dprintf (ASE_T("%s = "), (const ase_char_t*)pair->key);
|
||||
ase_awk_dprintval (run, (ase_awk_val_t*)pair->val);
|
||||
run->awk->sysfns.dprintf (ASE_T("\n"));
|
||||
run->awk->prmfns.dprintf (ASE_T("\n"));
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
@ -253,7 +253,7 @@ static int __set_global (
|
||||
|
||||
if (var != ASE_NULL)
|
||||
{
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg, ASE_COUNTOF(run->errmsg),
|
||||
ASE_T("map '%.*s' not assignable with a scalar"),
|
||||
var->id.name_len, var->id.name);
|
||||
@ -1382,9 +1382,9 @@ static int __run_main (
|
||||
else
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
run->awk->sysfns.dprintf (ASE_T("[RETURN] - "));
|
||||
run->awk->prmfns.dprintf (ASE_T("[RETURN] - "));
|
||||
ase_awk_dprintval (run, v);
|
||||
run->awk->sysfns.dprintf (ASE_T("\n"));
|
||||
run->awk->prmfns.dprintf (ASE_T("\n"));
|
||||
#endif
|
||||
/* destroy the return value if necessary */
|
||||
ase_awk_refupval (run, v);
|
||||
@ -1501,9 +1501,9 @@ static int __run_main (
|
||||
v = STACK_RETVAL(run);
|
||||
|
||||
#ifdef _DEBUG
|
||||
run->awk->sysfns.dprintf (ASE_T("[RETURN] - "));
|
||||
run->awk->prmfns.dprintf (ASE_T("[RETURN] - "));
|
||||
ase_awk_dprintval (run, v);
|
||||
run->awk->sysfns.dprintf (ASE_T("\n"));
|
||||
run->awk->prmfns.dprintf (ASE_T("\n"));
|
||||
#endif
|
||||
|
||||
/* the life of the global return value is over here
|
||||
@ -1530,9 +1530,9 @@ static int __run_main (
|
||||
run->exit_level = EXIT_NONE;
|
||||
|
||||
#ifdef _DEBUG
|
||||
run->awk->sysfns.dprintf (ASE_T("[VARIABLES]\n"));
|
||||
run->awk->prmfns.dprintf (ASE_T("[VARIABLES]\n"));
|
||||
ase_awk_map_walk (&run->named, __printval, run);
|
||||
run->awk->sysfns.dprintf (ASE_T("[END VARIABLES]\n"));
|
||||
run->awk->prmfns.dprintf (ASE_T("[END VARIABLES]\n"));
|
||||
#endif
|
||||
|
||||
return n;
|
||||
@ -1753,7 +1753,7 @@ static int __run_block0 (ase_awk_run_t* run, ase_awk_nde_blk_t* nde)
|
||||
p = nde->body;
|
||||
nlocals = nde->nlocals;
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("securing space for local variables nlocals = %d\n"), (int)nlocals);*/
|
||||
/*run->awk->prmfns.dprintf (ASE_T("securing space for local variables nlocals = %d\n"), (int)nlocals);*/
|
||||
saved_stack_top = run->stack_top;
|
||||
|
||||
/* secure space for local variables */
|
||||
@ -1770,10 +1770,10 @@ static int __run_block0 (ase_awk_run_t* run, ase_awk_nde_blk_t* nde)
|
||||
/* refupval is not required for ase_awk_val_nil */
|
||||
}
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("executing block statements\n"));*/
|
||||
/*run->awk->prmfns.dprintf (ASE_T("executing block statements\n"));*/
|
||||
while (p != ASE_NULL && run->exit_level == EXIT_NONE)
|
||||
{
|
||||
/*run->awk->sysfns.dprintf (ASE_T("running a statement\n"));*/
|
||||
/*run->awk->prmfns.dprintf (ASE_T("running a statement\n"));*/
|
||||
if (__run_statement(run,p) == -1)
|
||||
{
|
||||
n = -1;
|
||||
@ -1782,7 +1782,7 @@ static int __run_block0 (ase_awk_run_t* run, ase_awk_nde_blk_t* nde)
|
||||
p = p->next;
|
||||
}
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("popping off local variables\n"));*/
|
||||
/*run->awk->prmfns.dprintf (ASE_T("popping off local variables\n"));*/
|
||||
/* pop off local variables */
|
||||
nlocals = nde->nlocals;
|
||||
while (nlocals > 0)
|
||||
@ -2207,14 +2207,14 @@ static int __run_return (ase_awk_run_t* run, ase_awk_nde_return_t* nde)
|
||||
* by the parser first of all */
|
||||
ASE_AWK_ASSERT (run->awk, nde->val->next == ASE_NULL);
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("returning....\n"));*/
|
||||
/*run->awk->prmfns.dprintf (ASE_T("returning....\n"));*/
|
||||
val = __eval_expression (run, nde->val);
|
||||
if (val == ASE_NULL) return -1;
|
||||
|
||||
ase_awk_refdownval (run, STACK_RETVAL(run));
|
||||
STACK_RETVAL(run) = val;
|
||||
ase_awk_refupval (run, val); /* see __eval_call for the trick */
|
||||
/*run->awk->sysfns.dprintf (ASE_T("set return value....\n"));*/
|
||||
/*run->awk->prmfns.dprintf (ASE_T("set return value....\n"));*/
|
||||
}
|
||||
|
||||
run->exit_level = EXIT_FUNCTION;
|
||||
@ -2409,7 +2409,7 @@ static int __run_delete (ase_awk_run_t* run, ase_awk_nde_delete_t* nde)
|
||||
|
||||
if (val->type != ASE_AWK_VAL_MAP)
|
||||
{
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg, ASE_COUNTOF(run->errmsg),
|
||||
ASE_T("'%.*s' not deletable"),
|
||||
var->id.name_len, var->id.name);
|
||||
@ -2520,7 +2520,7 @@ static int __run_delete (ase_awk_run_t* run, ase_awk_nde_delete_t* nde)
|
||||
|
||||
if (val->type != ASE_AWK_VAL_MAP)
|
||||
{
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg, ASE_COUNTOF(run->errmsg),
|
||||
ASE_T("'%.*s' not deletable"),
|
||||
var->id.name_len, var->id.name);
|
||||
@ -3101,7 +3101,7 @@ static ase_awk_val_t* __do_assignment_scalar (
|
||||
{
|
||||
/* once a variable becomes a map,
|
||||
* it cannot be changed to a scalar variable */
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg, ASE_COUNTOF(run->errmsg),
|
||||
ASE_T("map '%.*s' not assignable with a scalar"),
|
||||
var->id.name_len, var->id.name);
|
||||
@ -3135,7 +3135,7 @@ static ase_awk_val_t* __do_assignment_scalar (
|
||||
{
|
||||
/* once the variable becomes a map,
|
||||
* it cannot be changed to a scalar variable */
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg, ASE_COUNTOF(run->errmsg),
|
||||
ASE_T("map '%.*s' not assignable with a scalar"),
|
||||
var->id.name_len, var->id.name);
|
||||
@ -3155,7 +3155,7 @@ static ase_awk_val_t* __do_assignment_scalar (
|
||||
{
|
||||
/* once the variable becomes a map,
|
||||
* it cannot be changed to a scalar variable */
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg, ASE_COUNTOF(run->errmsg),
|
||||
ASE_T("map '%.*s' not assignable with a scalar"),
|
||||
var->id.name_len, var->id.name);
|
||||
@ -3273,7 +3273,7 @@ static ase_awk_val_t* __do_assignment_map (
|
||||
str = __idxnde_to_str (run, var->idx, &len);
|
||||
if (str == ASE_NULL) return ASE_NULL;
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("**** index str=>%s, map->ref=%d, map->type=%d\n"), str, (int)map->ref, (int)map->type);*/
|
||||
/*run->awk->prmfns.dprintf (ASE_T("**** index str=>%s, map->ref=%d, map->type=%d\n"), str, (int)map->ref, (int)map->type);*/
|
||||
n = ase_awk_map_putx (map->map, str, len, val, ASE_NULL);
|
||||
if (n < 0)
|
||||
{
|
||||
@ -4361,7 +4361,7 @@ static ase_awk_val_t* __eval_binop_exp (
|
||||
ase_real_t r1, r2;
|
||||
ase_awk_val_t* res;
|
||||
|
||||
ASE_AWK_ASSERTX (run->awk, run->awk->sysfns.pow != ASE_NULL,
|
||||
ASE_AWK_ASSERTX (run->awk, run->awk->prmfns.pow != ASE_NULL,
|
||||
"the pow function should be provided when the awk object is created to make the exponentiation work properly.");
|
||||
|
||||
n1 = ase_awk_valtonum (run, left, &l1, &r1);
|
||||
@ -4422,14 +4422,14 @@ static ase_awk_val_t* __eval_binop_exp (
|
||||
{
|
||||
/* left - int, right - real */
|
||||
res = ase_awk_makerealval (run,
|
||||
run->awk->sysfns.pow((ase_real_t)l1,(ase_real_t)r2));
|
||||
run->awk->prmfns.pow((ase_real_t)l1,(ase_real_t)r2));
|
||||
}
|
||||
else
|
||||
{
|
||||
/* left - real, right - real */
|
||||
ASE_AWK_ASSERT (run->awk, n3 == 3);
|
||||
res = ase_awk_makerealval (run,
|
||||
run->awk->sysfns.pow((ase_real_t)r1,(ase_real_t)r2));
|
||||
run->awk->prmfns.pow((ase_real_t)r1,(ase_real_t)r2));
|
||||
}
|
||||
|
||||
if (res == ASE_NULL)
|
||||
@ -5244,7 +5244,7 @@ static ase_awk_val_t* __eval_afn (ase_awk_run_t* run, ase_awk_nde_t* nde)
|
||||
if (len2 < ASE_COUNTOF(run->errmsg) &&
|
||||
call->what.afn.name.len > ASE_COUNTOF(run->errmsg)-len2)
|
||||
{
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg,
|
||||
ASE_COUNTOF(run->errmsg),
|
||||
fmt2,
|
||||
@ -5253,7 +5253,7 @@ static ase_awk_val_t* __eval_afn (ase_awk_run_t* run, ase_awk_nde_t* nde)
|
||||
}
|
||||
else
|
||||
{
|
||||
run->awk->sysfns.sprintf (
|
||||
run->awk->prmfns.sprintf (
|
||||
run->errmsg,
|
||||
ASE_COUNTOF(run->errmsg),
|
||||
fmt,
|
||||
@ -5358,7 +5358,7 @@ static ase_awk_val_t* __eval_call (
|
||||
|
||||
saved_stack_top = run->stack_top;
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("setting up function stack frame stack_top = %ld stack_base = %ld\n"), run->stack_top, run->stack_base); */
|
||||
/*run->awk->prmfns.dprintf (ASE_T("setting up function stack frame stack_top = %ld stack_base = %ld\n"), run->stack_top, run->stack_base); */
|
||||
if (__raw_push(run,(void*)run->stack_base) == -1)
|
||||
{
|
||||
ase_awk_setrunerror (
|
||||
@ -5483,7 +5483,7 @@ static ase_awk_val_t* __eval_call (
|
||||
run->stack_base = saved_stack_top;
|
||||
STACK_NARGS(run) = (void*)nargs;
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("running function body\n")); */
|
||||
/*run->awk->prmfns.dprintf (ASE_T("running function body\n")); */
|
||||
|
||||
if (afn != ASE_NULL)
|
||||
{
|
||||
@ -5509,16 +5509,16 @@ static ase_awk_val_t* __eval_call (
|
||||
}
|
||||
}
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("block run complete\n")); */
|
||||
/*run->awk->prmfns.dprintf (ASE_T("block run complete\n")); */
|
||||
|
||||
/* refdown args in the run.stack */
|
||||
nargs = (ase_size_t)STACK_NARGS(run);
|
||||
/*run->awk->sysfns.dprintf (ASE_T("block run complete nargs = %d\n"), (int)nargs); */
|
||||
/*run->awk->prmfns.dprintf (ASE_T("block run complete nargs = %d\n"), (int)nargs); */
|
||||
for (i = 0; i < nargs; i++)
|
||||
{
|
||||
ase_awk_refdownval (run, STACK_ARG(run,i));
|
||||
}
|
||||
/*run->awk->sysfns.dprintf (ASE_T("got return value\n")); */
|
||||
/*run->awk->prmfns.dprintf (ASE_T("got return value\n")); */
|
||||
|
||||
/* this trick has been mentioned in __run_return.
|
||||
* adjust the reference count of the return value.
|
||||
@ -5533,7 +5533,7 @@ static ase_awk_val_t* __eval_call (
|
||||
|
||||
if (run->exit_level == EXIT_FUNCTION) run->exit_level = EXIT_NONE;
|
||||
|
||||
/*run->awk->sysfns.dprintf (ASE_T("returning from function stack_top=%ld, stack_base=%ld\n"), run->stack_top, run->stack_base); */
|
||||
/*run->awk->prmfns.dprintf (ASE_T("returning from function stack_top=%ld, stack_base=%ld\n"), run->stack_top, run->stack_base); */
|
||||
return (n == -1)? ASE_NULL: v;
|
||||
}
|
||||
|
||||
@ -6102,7 +6102,7 @@ static int __raw_push (ase_awk_run_t* run, void* val)
|
||||
|
||||
n = run->stack_limit + STACK_INCREMENT;
|
||||
|
||||
if (run->awk->sysfns.realloc != ASE_NULL)
|
||||
if (run->awk->prmfns.realloc != ASE_NULL)
|
||||
{
|
||||
tmp = (void**) ASE_AWK_REALLOC (
|
||||
run->awk, run->stack, n * ASE_SIZEOF(void*));
|
||||
@ -6154,7 +6154,7 @@ static int __read_record (ase_awk_run_t* run)
|
||||
return -1;
|
||||
}
|
||||
/*
|
||||
run->awk->sysfns.dprintf (ASE_T("len = %d str=[%s]\n"),
|
||||
run->awk->prmfns.dprintf (ASE_T("len = %d str=[%s]\n"),
|
||||
(int)ASE_AWK_STR_LEN(&run->inrec.line),
|
||||
ASE_AWK_STR_BUF(&run->inrec.line));
|
||||
*/
|
||||
@ -6472,7 +6472,7 @@ ase_char_t* ase_awk_format (
|
||||
|
||||
do
|
||||
{
|
||||
n = run->awk->sysfns.sprintf (
|
||||
n = run->awk->prmfns.sprintf (
|
||||
run->format.tmp.ptr,
|
||||
run->format.tmp.len,
|
||||
#if ASE_SIZEOF_LONG_LONG > 0
|
||||
@ -6575,7 +6575,7 @@ ase_char_t* ase_awk_format (
|
||||
|
||||
do
|
||||
{
|
||||
n = run->awk->sysfns.sprintf (
|
||||
n = run->awk->prmfns.sprintf (
|
||||
run->format.tmp.ptr,
|
||||
run->format.tmp.len,
|
||||
#if ASE_SIZEOF_LONG_LONG > 0
|
||||
@ -6695,7 +6695,7 @@ ase_char_t* ase_awk_format (
|
||||
|
||||
do
|
||||
{
|
||||
n = run->awk->sysfns.sprintf (
|
||||
n = run->awk->prmfns.sprintf (
|
||||
run->format.tmp.ptr,
|
||||
run->format.tmp.len,
|
||||
ASE_AWK_STR_BUF(fbu),
|
||||
@ -6782,7 +6782,7 @@ ase_char_t* ase_awk_format (
|
||||
|
||||
do
|
||||
{
|
||||
n = run->awk->sysfns.sprintf (
|
||||
n = run->awk->prmfns.sprintf (
|
||||
run->format.tmp.ptr,
|
||||
run->format.tmp.len,
|
||||
ASE_AWK_STR_BUF(fbu),
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: str.c,v 1.14 2006-12-13 14:16:12 bacon Exp $
|
||||
* $Id: str.c,v 1.15 2007-02-01 08:38:24 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -109,7 +109,7 @@ ase_size_t ase_awk_str_ncat (
|
||||
/* double the capa if necessary for concatenation */
|
||||
if (capa < str->capa * 2) capa = str->capa * 2;
|
||||
|
||||
if (str->awk->sysfns.realloc != ASE_NULL)
|
||||
if (str->awk->prmfns.realloc != ASE_NULL)
|
||||
{
|
||||
tmp = (ase_char_t*) ASE_AWK_REALLOC (
|
||||
str->awk, str->buf,
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: tab.c,v 1.27 2006-12-13 14:16:12 bacon Exp $
|
||||
* $Id: tab.c,v 1.28 2007-02-01 08:38:24 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -58,7 +58,7 @@ ase_awk_tab_t* ase_awk_tab_setcapa (ase_awk_tab_t* tab, ase_size_t capa)
|
||||
|
||||
if (capa > 0)
|
||||
{
|
||||
if (tab->awk->sysfns.realloc != ASE_NULL)
|
||||
if (tab->awk->prmfns.realloc != ASE_NULL)
|
||||
{
|
||||
tmp = ASE_AWK_REALLOC (tab->awk,
|
||||
tab->buf, ASE_SIZEOF(*tab->buf) * capa);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: tree.c,v 1.99 2007-01-03 04:16:15 bacon Exp $
|
||||
* $Id: tree.c,v 1.100 2007-02-01 08:38:24 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -258,11 +258,11 @@ static int __print_expression (ase_awk_t* awk, ase_awk_nde_t* nde)
|
||||
{
|
||||
ase_char_t tmp[256];
|
||||
#if (ASE_SIZEOF_LONG_DOUBLE != 0)
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
tmp, ASE_COUNTOF(tmp), ASE_T("%Lf"),
|
||||
(long double)((ase_awk_nde_real_t*)nde)->val);
|
||||
#elif (ASE_SIZEOF_DOUBLE != 0)
|
||||
awk->sysfns.sprintf (
|
||||
awk->prmfns.sprintf (
|
||||
tmp, ASE_COUNTOF(tmp), ASE_T("%f"),
|
||||
(double)((ase_awk_nde_real_t*)nde)->val);
|
||||
#else
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: val.c,v 1.104 2007-01-28 11:12:30 bacon Exp $
|
||||
* $Id: val.c,v 1.105 2007-02-01 08:38:24 bacon Exp $
|
||||
*/
|
||||
|
||||
#include <ase/awk/awk_i.h>
|
||||
@ -339,9 +339,9 @@ void ase_awk_refupval (ase_awk_run_t* run, ase_awk_val_t* val)
|
||||
if (ase_awk_isbuiltinval(val)) return;
|
||||
|
||||
/*
|
||||
run->awk->sysfns.dprintf (ASE_T("ref up [ptr=%p] [count=%d] "), val, (int)val->ref);
|
||||
run->awk->prmfns.dprintf (ASE_T("ref up [ptr=%p] [count=%d] "), val, (int)val->ref);
|
||||
ase_awk_dprintval (run, val);
|
||||
run->awk->sysfns.dprintf (ASE_T("\n"));
|
||||
run->awk->prmfns.dprintf (ASE_T("\n"));
|
||||
*/
|
||||
|
||||
val->ref++;
|
||||
@ -352,9 +352,9 @@ void ase_awk_refdownval (ase_awk_run_t* run, ase_awk_val_t* val)
|
||||
if (ase_awk_isbuiltinval(val)) return;
|
||||
|
||||
/*
|
||||
run->awk->sysfns.dprintf (ASE_T("ref down [ptr=%p] [count=%d]\n"), val, (int)val->ref);
|
||||
run->awk->prmfns.dprintf (ASE_T("ref down [ptr=%p] [count=%d]\n"), val, (int)val->ref);
|
||||
ase_awk_dprintval (run, val);
|
||||
run->awk->sysfns.dprintf (ASE_T("\n"));
|
||||
run->awk->prmfns.dprintf (ASE_T("\n"));
|
||||
*/
|
||||
|
||||
ASE_AWK_ASSERTX (run->awk, val->ref > 0,
|
||||
@ -462,7 +462,7 @@ ase_char_t* ase_awk_valtostr (
|
||||
}
|
||||
|
||||
#ifdef _DEBUG
|
||||
run->awk->sysfns.dprintf (
|
||||
run->awk->prmfns.dprintf (
|
||||
ASE_T("ERROR: WRONG VALUE TYPE [%d] in ase_awk_valtostr\n"),
|
||||
v->type);
|
||||
#endif
|
||||
@ -719,7 +719,7 @@ int ase_awk_valtonum (
|
||||
}
|
||||
|
||||
#ifdef _DEBUG
|
||||
run->awk->sysfns.dprintf (
|
||||
run->awk->prmfns.dprintf (
|
||||
ASE_T("ERROR: WRONG VALUE TYPE [%d] in ase_awk_valtonum\n"),
|
||||
v->type);
|
||||
#endif
|
||||
@ -748,7 +748,7 @@ int ase_awk_strtonum (
|
||||
|
||||
}
|
||||
|
||||
#define __DPRINTF run->awk->sysfns.dprintf
|
||||
#define __DPRINTF run->awk->prmfns.dprintf
|
||||
|
||||
static int __print_pair (ase_awk_pair_t* pair, void* arg)
|
||||
{
|
||||
|
Reference in New Issue
Block a user