From 0e4cdc0f04e353b713c47d52febbd09d8f58d078 Mon Sep 17 00:00:00 2001 From: hyung-hwan Date: Sat, 4 Jan 2020 16:19:38 +0000 Subject: [PATCH] updating Hawk and StdHawk classes for hawk --- hawk/lib/Hawk.cpp | 190 ++++++++++++++++---------------- hawk/lib/Hawk.hpp | 250 ++++++++++++++++++++++--------------------- hawk/lib/StdHawk.cpp | 140 ++++++++++++------------ hawk/lib/StdHawk.hpp | 68 ++++++------ 4 files changed, 324 insertions(+), 324 deletions(-) diff --git a/hawk/lib/Hawk.cpp b/hawk/lib/Hawk.cpp index 7193c4e3..835eced1 100644 --- a/hawk/lib/Hawk.cpp +++ b/hawk/lib/Hawk.cpp @@ -64,7 +64,7 @@ Hawk::RIOBase::RIOBase (Run* run, rio_arg_t* riod): run (run), riod (riod) { } -const Hawk::char_t* Hawk::RIOBase::getName () const +const hawk_ooch_t* Hawk::RIOBase::getName () const { return this->riod->name; } @@ -163,17 +163,15 @@ Hawk::Console::~Console () } } -int Hawk::Console::setFileName (const char_t* name) +int Hawk::Console::setFileName (const hawk_ooch_t* name) { if (this->getMode() == READ) { - return hawk_rtx_setfilename ( - this->run->rtx, name, hawk_strlen(name)); + return hawk_rtx_setfilename(this->run->rtx, name, hawk_count_oocstr(name)); } else { - return hawk_rtx_setofilename ( - this->run->rtx, name, hawk_strlen(name)); + return hawk_rtx_setofilename(this->run->rtx, name, hawk_count_oocstr(name)); } } @@ -203,9 +201,9 @@ Hawk::Console::Mode Hawk::Console::getMode () const Hawk::Value::IndexIterator Hawk::Value::IndexIterator::END; -const Hawk::char_t* Hawk::Value::getEmptyStr() +const hawk_ooch_t* Hawk::Value::getEmptyStr() { - static const Hawk::char_t* EMPTY_STRING = HAWK_T(""); + static const hawk_ooch_t* EMPTY_STRING = HAWK_T(""); return EMPTY_STRING; } const hawk_bch_t* Hawk::Value::getEmptyMbs() @@ -259,7 +257,7 @@ Hawk::Value::IntIndex::IntIndex (int_t x) } #if defined(HAWK_VALUE_USE_IN_CLASS_PLACEMENT_NEW) -void* Hawk::Value::operator new (size_t n, Run* run) throw () +void* Hawk::Value::operator new (hawk_oow_t n, Run* run) throw () { void* ptr = hawk_rtx_allocmem (run->rtx, HAWK_SIZEOF(run) + n); if (ptr == HAWK_NULL) return HAWK_NULL; @@ -268,7 +266,7 @@ void* Hawk::Value::operator new (size_t n, Run* run) throw () return (char*)ptr + HAWK_SIZEOF(run); } -void* Hawk::Value::operator new[] (size_t n, Run* run) throw () +void* Hawk::Value::operator new[] (hawk_oow_t n, Run* run) throw () { void* ptr = hawk_rtx_allocmem (run->rtx, HAWK_SIZEOF(run) + n); if (ptr == HAWK_NULL) return HAWK_NULL; @@ -419,10 +417,10 @@ Hawk::Value::operator Hawk::flt_t () const return v; } -Hawk::Value::operator const Hawk::char_t* () const +Hawk::Value::operator const hawk_ooch_t* () const { - const Hawk::char_t* ptr; - size_t len; + const hawk_ooch_t* ptr; + hawk_oow_t len; if (Hawk::Value::getStr(&ptr, &len) <= -1) ptr = getEmptyStr(); return ptr; } @@ -431,7 +429,7 @@ Hawk::Value::operator const Hawk::char_t* () const Hawk::Value::operator const hawk_bch_t* () const { const hawk_bch_t* ptr; - size_t len; + hawk_oow_t len; if (Hawk::Value::getMbs(&ptr, &len) <= -1) ptr = getEmptyMbs(); return ptr; } @@ -496,10 +494,10 @@ int Hawk::Value::getNum (int_t* lv, flt_t* fv) const return 0; } -int Hawk::Value::getStr (const char_t** str, size_t* len) const +int Hawk::Value::getStr (const hawk_ooch_t** str, hawk_oow_t* len) const { - const char_t* p = getEmptyStr(); - size_t l = 0; + const hawk_ooch_t* p = getEmptyStr(); + hawk_oow_t l = 0; HAWK_ASSERT (this->val != HAWK_NULL); @@ -542,10 +540,10 @@ int Hawk::Value::getStr (const char_t** str, size_t* len) const return 0; } -int Hawk::Value::getMbs (const hawk_bch_t** str, size_t* len) const +int Hawk::Value::getMbs (const hawk_bch_t** str, hawk_oow_t* len) const { const hawk_bch_t* p = getEmptyMbs(); - size_t l = 0; + hawk_oow_t l = 0; HAWK_ASSERT (this->val != HAWK_NULL); @@ -676,7 +674,7 @@ int Hawk::Value::setFlt (Run* r, flt_t v) return n; } -int Hawk::Value::setStr (const char_t* str, size_t len, bool numeric) +int Hawk::Value::setStr (const hawk_ooch_t* str, hawk_oow_t len, bool numeric) { if (this->run == HAWK_NULL) { @@ -687,12 +685,12 @@ int Hawk::Value::setStr (const char_t* str, size_t len, bool numeric) return this->setStr(this->run, str, len, numeric); } -int Hawk::Value::setStr (Run* r, const char_t* str, size_t len, bool numeric) +int Hawk::Value::setStr (Run* r, const hawk_ooch_t* str, hawk_oow_t len, bool numeric) { val_t* tmp; - oocs_t oocs; - oocs.ptr = (char_t*)str; + hawk_oocs_t oocs; + oocs.ptr = (hawk_ooch_t*)str; oocs.len = len; tmp = numeric? hawk_rtx_makenstrvalwithoocs(r->rtx, &oocs): @@ -708,13 +706,13 @@ int Hawk::Value::setStr (Run* r, const char_t* str, size_t len, bool numeric) return n; } -int Hawk::Value::setStr (const char_t* str, bool numeric) +int Hawk::Value::setStr (const hawk_ooch_t* str, bool numeric) { if (this->run == HAWK_NULL) return -1; return this->setStr(this->run, str, numeric); } -int Hawk::Value::setStr (Run* r, const char_t* str, bool numeric) +int Hawk::Value::setStr (Run* r, const hawk_ooch_t* str, bool numeric) { val_t* tmp; tmp = numeric? hawk_rtx_makenstrvalwithoocstr(r->rtx, str): @@ -731,7 +729,7 @@ int Hawk::Value::setStr (Run* r, const char_t* str, bool numeric) } -int Hawk::Value::setMbs (const hawk_bch_t* str, size_t len) +int Hawk::Value::setMbs (const hawk_bch_t* str, hawk_oow_t len) { if (this->run == HAWK_NULL) { @@ -742,7 +740,7 @@ int Hawk::Value::setMbs (const hawk_bch_t* str, size_t len) return this->setMbs(this->run, str, len); } -int Hawk::Value::setMbs (Run* r, const hawk_bch_t* str, size_t len) +int Hawk::Value::setMbs (Run* r, const hawk_bch_t* str, hawk_oow_t len) { val_t* tmp; @@ -771,7 +769,7 @@ int Hawk::Value::setMbs (const hawk_bch_t* str) int Hawk::Value::setMbs (Run* r, const hawk_bch_t* str) { val_t* tmp; - tmp = hawk_rtx_makembsval(r->rtx, str, hawk_mbslen(str)); + tmp = hawk_rtx_makembsval(r->rtx, str, hawk_count_bcstr(str)); if (!tmp) { r->awk->retrieveError (r); @@ -894,19 +892,19 @@ int Hawk::Value::setIndexedFlt (Run* r, const Index& idx, flt_t v) return n; } -int Hawk::Value::setIndexedStr (const Index& idx, const char_t* str, size_t len, bool numeric) +int Hawk::Value::setIndexedStr (const Index& idx, const hawk_ooch_t* str, hawk_oow_t len, bool numeric) { if (run == HAWK_NULL) return -1; return this->setIndexedStr(run, idx, str, len, numeric); } int Hawk::Value::setIndexedStr ( - Run* r, const Index& idx, const char_t* str, size_t len, bool numeric) + Run* r, const Index& idx, const hawk_ooch_t* str, hawk_oow_t len, bool numeric) { val_t* tmp; - oocs_t oocs; - oocs.ptr = (char_t*)str; + hawk_oocs_t oocs; + oocs.ptr = (hawk_ooch_t*)str; oocs.len = len; tmp = numeric? hawk_rtx_makenstrvalwithoocs(r->rtx, &oocs): @@ -924,13 +922,13 @@ int Hawk::Value::setIndexedStr ( return n; } -int Hawk::Value::setIndexedStr (const Index& idx, const char_t* str, bool numeric) +int Hawk::Value::setIndexedStr (const Index& idx, const hawk_ooch_t* str, bool numeric) { if (run == HAWK_NULL) return -1; return this->setIndexedStr(run, idx, str, numeric); } -int Hawk::Value::setIndexedStr (Run* r, const Index& idx, const char_t* str, bool numeric) +int Hawk::Value::setIndexedStr (Run* r, const Index& idx, const hawk_ooch_t* str, bool numeric) { val_t* tmp; tmp = numeric? hawk_rtx_makenstrvalwithoocstr(r->rtx, str): @@ -948,13 +946,13 @@ int Hawk::Value::setIndexedStr (Run* r, const Index& idx, const char_t* str, boo return n; } -int Hawk::Value::setIndexedMbs (const Index& idx, const hawk_bch_t* str, size_t len) +int Hawk::Value::setIndexedMbs (const Index& idx, const hawk_bch_t* str, hawk_oow_t len) { if (run == HAWK_NULL) return -1; return this->setIndexedMbs(run, idx, str, len); } -int Hawk::Value::setIndexedMbs (Run* r, const Index& idx, const hawk_bch_t* str, size_t len) +int Hawk::Value::setIndexedMbs (Run* r, const Index& idx, const hawk_bch_t* str, hawk_oow_t len) { val_t* tmp; @@ -985,7 +983,7 @@ int Hawk::Value::setIndexedMbs (const Index& idx, const hawk_bch_t* str) int Hawk::Value::setIndexedMbs (Run* r, const Index& idx, const hawk_bch_t* str) { val_t* tmp; - tmp = hawk_rtx_makembsval(r->rtx, str, hawk_mbslen(str)); + tmp = hawk_rtx_makembsval(r->rtx, str, hawk_count_bcstr(str)); if (tmp == HAWK_NULL) { r->awk->retrieveError (r); @@ -1018,7 +1016,7 @@ int Hawk::Value::getIndexed (const Index& idx, Value* v) const } // get the value from the map. - val_t* fv = hawk_rtx_getmapvalfld(this->run->rtx, val, (char_t*)idx.ptr, idx.len); + val_t* fv = hawk_rtx_getmapvalfld(this->run->rtx, val, (hawk_ooch_t*)idx.ptr, idx.len); // the key is not found. it is not an error. v is just nil if (fv == HAWK_NULL) @@ -1121,20 +1119,20 @@ Hawk::loc_t Hawk::Run::getErrorLocation () const return *hawk_rtx_geterrloc (this->rtx); } -const Hawk::char_t* Hawk::Run::getErrorMessage () const +const hawk_ooch_t* Hawk::Run::getErrorMessage () const { HAWK_ASSERT (this->rtx != HAWK_NULL); return hawk_rtx_geterrmsg (this->rtx); } -void Hawk::Run::setError (errnum_t code, const oocs_t* args, const loc_t* loc) +void Hawk::Run::setError (errnum_t code, const hawk_oocs_t* args, const loc_t* loc) { HAWK_ASSERT (this->rtx != HAWK_NULL); hawk_rtx_seterror (this->rtx, code, args, loc); } void Hawk::Run::setErrorWithMessage ( - errnum_t code, const char_t* msg, const loc_t* loc) + errnum_t code, const hawk_ooch_t* msg, const loc_t* loc) { HAWK_ASSERT (this->rtx != HAWK_NULL); @@ -1174,7 +1172,7 @@ int Hawk::Run::setGlobal (int id, flt_t v) return n; } -int Hawk::Run::setGlobal (int id, const char_t* ptr, size_t len) +int Hawk::Run::setGlobal (int id, const hawk_ooch_t* ptr, hawk_oow_t len) { HAWK_ASSERT (this->rtx != HAWK_NULL); @@ -1224,14 +1222,14 @@ Hawk::operator Hawk::awk_t* () const return this->awk; } -const Hawk::char_t* Hawk::getErrorString (errnum_t num) const +const hawk_ooch_t* Hawk::getErrorString (errnum_t num) const { HAWK_ASSERT (awk != HAWK_NULL); HAWK_ASSERT (dflerrstr != HAWK_NULL); return dflerrstr (awk, num); } -const Hawk::char_t* Hawk::xerrstr (awk_t* a, errnum_t num) +const hawk_ooch_t* Hawk::xerrstr (awk_t* a, errnum_t num) { Hawk* awk = *(Hawk**)GET_XTN(a); return awk->getErrorString (num); @@ -1248,12 +1246,12 @@ Hawk::loc_t Hawk::getErrorLocation () const return this->errinf.loc; } -const Hawk::char_t* Hawk::getErrorMessage () const +const hawk_ooch_t* Hawk::getErrorMessage () const { return this->errinf.msg; } -void Hawk::setError (errnum_t code, const oocs_t* args, const loc_t* loc) +void Hawk::setError (errnum_t code, const hawk_oocs_t* args, const loc_t* loc) { if (awk != HAWK_NULL) { @@ -1270,7 +1268,7 @@ void Hawk::setError (errnum_t code, const oocs_t* args, const loc_t* loc) } } -void Hawk::setErrorWithMessage (errnum_t code, const char_t* msg, const loc_t* loc) +void Hawk::setErrorWithMessage (errnum_t code, const hawk_ooch_t* msg, const loc_t* loc) { HAWK_MEMSET (&errinf, 0, HAWK_SIZEOF(errinf)); @@ -1328,11 +1326,11 @@ int Hawk::open () hawk_prm_t prm; HAWK_MEMSET (&prm, 0, HAWK_SIZEOF(prm)); - prm.math.pow = pow; - prm.math.mod = mod; - prm.modopen = modopen; - prm.modclose = modclose; - prm.modsym = modsym; + prm.math.pow = pow; + prm.math.mod = mod; + prm.modopen = modopen; + prm.modclose = modclose; + prm.modgetsym = modgetsym; hawk_errnum_t errnum; this->awk = hawk_open(this->getMmgr(), HAWK_SIZEOF(xtn_t), &prm, &errnum); @@ -1492,7 +1490,7 @@ int Hawk::loop (Value* ret) return 0; } -int Hawk::call (const hawk_bch_t* name, Value* ret, const Value* args, size_t nargs) +int Hawk::call (const hawk_bch_t* name, Value* ret, const Value* args, hawk_oow_t nargs) { HAWK_ASSERT (this->awk != HAWK_NULL); HAWK_ASSERT (this->runctx.rtx != HAWK_NULL); @@ -1514,7 +1512,7 @@ int Hawk::call (const hawk_bch_t* name, Value* ret, const Value* args, size_t na } } - for (size_t i = 0; i < nargs; i++) ptr[i] = (val_t*)args[i]; + for (hawk_oow_t i = 0; i < nargs; i++) ptr[i] = (val_t*)args[i]; } val_t* rv = hawk_rtx_callwithbcstr(this->runctx.rtx, name, ptr, nargs); @@ -1533,7 +1531,7 @@ int Hawk::call (const hawk_bch_t* name, Value* ret, const Value* args, size_t na return 0; } -int Hawk::call (const hawk_uch_t* name, Value* ret, const Value* args, size_t nargs) +int Hawk::call (const hawk_uch_t* name, Value* ret, const Value* args, hawk_oow_t nargs) { HAWK_ASSERT (this->awk != HAWK_NULL); HAWK_ASSERT (this->runctx.rtx != HAWK_NULL); @@ -1555,7 +1553,7 @@ int Hawk::call (const hawk_uch_t* name, Value* ret, const Value* args, size_t na } } - for (size_t i = 0; i < nargs; i++) ptr[i] = (val_t*)args[i]; + for (hawk_oow_t i = 0; i < nargs; i++) ptr[i] = (val_t*)args[i]; } val_t* rv = hawk_rtx_callwithucstr(this->runctx.rtx, name, ptr, nargs); @@ -1584,7 +1582,7 @@ int Hawk::init_runctx () { if (this->runctx.rtx) return 0; - hawk_rio_t rio; + hawk_rio_cbs_t rio; rio.pipe = pipeHandler; rio.file = fileHandler; @@ -1629,16 +1627,16 @@ void Hawk::setTrait (int trait) hawk_setopt (awk, HAWK_TRAIT, &trait); } -Hawk::size_t Hawk::getMaxDepth (depth_t id) const +hawk_oow_t Hawk::getMaxDepth (depth_t id) const { HAWK_ASSERT (awk != HAWK_NULL); - size_t depth; + hawk_oow_t depth; hawk_getopt (awk, (hawk_opt_t)id, &depth); return depth; } -void Hawk::setMaxDepth (depth_t id, size_t depth) +void Hawk::setMaxDepth (depth_t id, hawk_oow_t depth) { HAWK_ASSERT (awk != HAWK_NULL); hawk_setopt (awk, (hawk_opt_t)id, &depth); @@ -1671,7 +1669,7 @@ int Hawk::dispatch_function (Run* run, const fnc_info_t* fi) handler = pair->value; #endif - size_t i, nargs = hawk_rtx_getnargs(run->rtx); + hawk_oow_t i, nargs = hawk_rtx_getnargs(run->rtx); Value buf[16]; Value* args; @@ -1724,9 +1722,7 @@ int Hawk::dispatch_function (Run* run, const fnc_info_t* fi) if (idx == 0) { - xx = args[i].setStr (run, - HAWK_STR_PTR(&run->rtx->inrec.line), - HAWK_STR_LEN(&run->rtx->inrec.line)); + xx = args[i].setStr(run, HAWK_OOECS_PTR(&run->rtx->inrec.line), HAWK_OOECS_LEN(&run->rtx->inrec.line)); } else if (idx <= run->rtx->inrec.nflds) { @@ -1736,7 +1732,7 @@ int Hawk::dispatch_function (Run* run, const fnc_info_t* fi) } else { - xx = args[i].setStr (run, HAWK_T(""), (size_t)0); + xx = args[i].setStr (run, HAWK_T(""), (hawk_oow_t)0); } break; } @@ -1779,8 +1775,8 @@ int Hawk::dispatch_function (Run* run, const fnc_info_t* fi) { for (i = 0; i < nargs; i++) { - HAWK_ASSERTX (args[i].run == run, - "Do NOT change the run field from function handler"); + // Do NOT change the run field from function handler + HAWK_ASSERT (args[i].run == run); val_t* v = hawk_rtx_getarg(run->rtx, i); if (HAWK_RTX_GETVALTYPE(run->rtx, v) == HAWK_VAL_REF) @@ -1821,12 +1817,12 @@ int Hawk::dispatch_function (Run* run, const fnc_info_t* fi) return 0; } -int Hawk::xstrs_t::add (awk_t* awk, const char_t* arg, size_t len) +int Hawk::xstrs_t::add (awk_t* awk, const hawk_ooch_t* arg, hawk_oow_t len) { if (this->len >= this->capa) { hawk_oocs_t* ptr; - size_t capa = this->capa; + hawk_oow_t capa = this->capa; capa += 64; ptr = (hawk_oocs_t*)hawk_reallocmem(awk, this->ptr, HAWK_SIZEOF(hawk_oocs_t)*(capa+1)); @@ -1837,7 +1833,7 @@ int Hawk::xstrs_t::add (awk_t* awk, const char_t* arg, size_t len) } this->ptr[this->len].len = len; - this->ptr[this->len].ptr = hawk_strxdup(awk, arg, len); + this->ptr[this->len].ptr = hawk_dupoochars(awk, arg, len); if (this->ptr[this->len].ptr == HAWK_NULL) return -1; this->len++; @@ -1860,7 +1856,7 @@ void Hawk::xstrs_t::clear (awk_t* awk) } } -int Hawk::addArgument (const char_t* arg, size_t len) +int Hawk::addArgument (const hawk_ooch_t* arg, hawk_oow_t len) { HAWK_ASSERT (awk != HAWK_NULL); int n = runarg.add(awk, arg, len); @@ -1868,9 +1864,9 @@ int Hawk::addArgument (const char_t* arg, size_t len) return n; } -int Hawk::addArgument (const char_t* arg) +int Hawk::addArgument (const hawk_ooch_t* arg) { - return addArgument(arg, hawk_strlen(arg)); + return addArgument(arg, hawk_count_oocstr(arg)); } void Hawk::clearArguments () @@ -1954,7 +1950,7 @@ int Hawk::getGlobal (int id, Value& v) } int Hawk::addFunction ( - const hawk_bch_t* name, size_t minArgs, size_t maxArgs, + const hawk_bch_t* name, hawk_oow_t minArgs, hawk_oow_t maxArgs, const hawk_bch_t* argSpec, FunctionHandler handler, int validOpts) { HAWK_ASSERT (awk != HAWK_NULL); @@ -1982,7 +1978,7 @@ int Hawk::addFunction ( // // the function name exists in the underlying function table. // use the pointer to the name to maintain the hash table. - hawk_htb_pair_t* pair = hawk_htb_upsert(this->functionMap, (char_t*)fnc->name.ptr, fnc->name.len, &handler, HAWK_SIZEOF(handler)); + hawk_htb_pair_t* pair = hawk_htb_upsert(this->functionMap, (hawk_ooch_t*)fnc->name.ptr, fnc->name.len, &handler, HAWK_SIZEOF(handler)); #else FunctionMap::Pair* pair; try { pair = this->functionMap.upsert(Cstr(fnc->name.ptr, fnc->name.len), handler); } @@ -2000,7 +1996,7 @@ int Hawk::addFunction ( } int Hawk::addFunction ( - const hawk_uch_t* name, size_t minArgs, size_t maxArgs, + const hawk_uch_t* name, hawk_oow_t minArgs, hawk_oow_t maxArgs, const hawk_uch_t* argSpec, FunctionHandler handler, int validOpts) { HAWK_ASSERT (awk != HAWK_NULL); @@ -2028,7 +2024,7 @@ int Hawk::addFunction ( // // the function name exists in the underlying function table. // use the pointer to the name to maintain the hash table. - hawk_htb_pair_t* pair = hawk_htb_upsert(this->functionMap, (char_t*)fnc->name.ptr, fnc->name.len, &handler, HAWK_SIZEOF(handler)); + hawk_htb_pair_t* pair = hawk_htb_upsert(this->functionMap, (hawk_ooch_t*)fnc->name.ptr, fnc->name.len, &handler, HAWK_SIZEOF(handler)); #else FunctionMap::Pair* pair; try { pair = this->functionMap.upsert(Cstr(fnc->name.ptr, fnc->name.len), handler); } @@ -2045,7 +2041,7 @@ int Hawk::addFunction ( return 0; } -int Hawk::deleteFunction (const char_t* name) +int Hawk::deleteFunction (const hawk_ooch_t* name) { HAWK_ASSERT (awk != HAWK_NULL); @@ -2053,7 +2049,7 @@ int Hawk::deleteFunction (const char_t* name) if (n == 0) { #if defined(HAWK_USE_HTB_FOR_FUNCTION_MAP) - hawk_htb_delete (this->functionMap, name, hawk_strlen(name)); + hawk_htb_delete (this->functionMap, name, hawk_count_oocstr(name)); #else this->functionMap.remove (Cstr(name)); #endif @@ -2063,9 +2059,9 @@ int Hawk::deleteFunction (const char_t* name) return n; } -Hawk::ssize_t Hawk::readSource ( +hawk_ooi_t Hawk::readSource ( awk_t* awk, sio_cmd_t cmd, sio_arg_t* arg, - char_t* data, size_t count) + hawk_ooch_t* data, hawk_oow_t count) { xtn_t* xtn = GET_XTN(awk); Source::Data sdat (xtn->awk, Source::READ, arg); @@ -2083,9 +2079,9 @@ Hawk::ssize_t Hawk::readSource ( } } -Hawk::ssize_t Hawk::writeSource ( +hawk_ooi_t Hawk::writeSource ( awk_t* awk, hawk_sio_cmd_t cmd, sio_arg_t* arg, - char_t* data, size_t count) + hawk_ooch_t* data, hawk_oow_t count) { xtn_t* xtn = GET_XTN(awk); Source::Data sdat (xtn->awk, Source::WRITE, arg); @@ -2103,7 +2099,7 @@ Hawk::ssize_t Hawk::writeSource ( } } -Hawk::ssize_t Hawk::pipeHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, void* data, size_t count) +hawk_ooi_t Hawk::pipeHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, void* data, hawk_oow_t count) { rxtn_t* rxtn = GET_RXTN(rtx); Hawk* awk = rxtn->run->awk; @@ -2167,7 +2163,7 @@ Hawk::ssize_t Hawk::pipeHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, voi } } -Hawk::ssize_t Hawk::fileHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, void* data, size_t count) +hawk_ooi_t Hawk::fileHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, void* data, hawk_oow_t count) { rxtn_t* rxtn = GET_RXTN(rtx); Hawk* awk = rxtn->run->awk; @@ -2231,7 +2227,7 @@ Hawk::ssize_t Hawk::fileHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, voi } } -Hawk::ssize_t Hawk::consoleHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, void* data, size_t count) +hawk_ooi_t Hawk::consoleHandler (rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, void* data, hawk_oow_t count) { rxtn_t* rxtn = GET_RXTN(rtx); Hawk* awk = rxtn->run->awk; @@ -2311,19 +2307,19 @@ int Hawk::closePipe (Pipe& io) return -1; } -Hawk::ssize_t Hawk::readPipe (Pipe& io, char_t* buf, size_t len) +hawk_ooi_t Hawk::readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; } -Hawk::ssize_t Hawk::writePipe (Pipe& io, const char_t* buf, size_t len) +hawk_ooi_t Hawk::writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; } -Hawk::ssize_t Hawk::writePipeBytes (Pipe& io, const hawk_bch_t* buf, size_t len) +hawk_ooi_t Hawk::writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; @@ -2347,19 +2343,19 @@ int Hawk::closeFile (File& io) return -1; } -Hawk::ssize_t Hawk::readFile (File& io, char_t* buf, size_t len) +hawk_ooi_t Hawk::readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; } -Hawk::ssize_t Hawk::writeFile (File& io, const char_t* buf, size_t len) +hawk_ooi_t Hawk::writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; } -Hawk::ssize_t Hawk::writeFileBytes (File& io, const hawk_bch_t* buf, size_t len) +hawk_ooi_t Hawk::writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; @@ -2383,19 +2379,19 @@ int Hawk::closeConsole (Console& io) return -1; } -Hawk::ssize_t Hawk::readConsole (Console& io, char_t* buf, size_t len) +hawk_ooi_t Hawk::readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; } -Hawk::ssize_t Hawk::writeConsole (Console& io, const char_t* buf, size_t len) +hawk_ooi_t Hawk::writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; } -Hawk::ssize_t Hawk::writeConsoleBytes (Console& io, const hawk_bch_t* buf, size_t len) +hawk_ooi_t Hawk::writeConsoleBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len) { ((Run*)io)->setError (HAWK_ENOIMPL); return -1; @@ -2443,10 +2439,10 @@ void Hawk::modclose (awk_t* awk, void* handle) xtn->awk->modclose (handle); } -void* Hawk::modsym (awk_t* awk, void* handle, const char_t* name) +void* Hawk::modgetsym (awk_t* awk, void* handle, const hawk_ooch_t* name) { xtn_t* xtn = GET_XTN(awk); - return xtn->awk->modsym (handle, name); + return xtn->awk->modgetsym (handle, name); } ///////////////////////////////// HAWK_END_NAMESPACE(HAWK) diff --git a/hawk/lib/Hawk.hpp b/hawk/lib/Hawk.hpp index dccc259f..433e3f86 100644 --- a/hawk/lib/Hawk.hpp +++ b/hawk/lib/Hawk.hpp @@ -30,10 +30,14 @@ #include #include -//#define HAWK_AWK_USE_HTB_FOR_FUNCTION_MAP 1 -//#define HAWK_AWK_VALUE_USE_IN_CLASS_PLACEMENT_NEW 1 +#define HAWK_USE_HTB_FOR_FUNCTION_MAP 1 +//#define HAWK_VALUE_USE_IN_CLASS_PLACEMENT_NEW 1 -#if defined(HAWK_AWK_USE_HTB_FOR_FUNCTION_MAP) +// TOOD: redefine these NAMESPACE stuffs or move them somewhere else +#define HAWK_BEGIN_NAMESPACE(x) namespace x { +#define HAWK_END_NAMESPACE(x) } + +#if defined(HAWK_USE_HTB_FOR_FUNCTION_MAP) # include #else # include @@ -71,13 +75,13 @@ public: enum depth_t { - DEPTH_INCLUDE = HAWK_AWK_DEPTH_INCLUDE, - DEPTH_BLOCK_PARSE = HAWK_AWK_DEPTH_BLOCK_PARSE, - DEPTH_BLOCK_RUN = HAWK_AWK_DEPTH_BLOCK_RUN, - DEPTH_EXPR_PARSE = HAWK_AWK_DEPTH_EXPR_PARSE, - DEPTH_EXPR_RUN = HAWK_AWK_DEPTH_EXPR_RUN, - DEPTH_REX_BUILD = HAWK_AWK_DEPTH_REX_BUILD, - DEPTH_REX_MATCH = HAWK_AWK_DEPTH_REX_MATCH + DEPTH_INCLUDE = HAWK_DEPTH_INCLUDE, + DEPTH_BLOCK_PARSE = HAWK_DEPTH_BLOCK_PARSE, + DEPTH_BLOCK_RUN = HAWK_DEPTH_BLOCK_RUN, + DEPTH_EXPR_PARSE = HAWK_DEPTH_EXPR_PARSE, + DEPTH_EXPR_RUN = HAWK_DEPTH_EXPR_RUN, + DEPTH_REX_BUILD = HAWK_DEPTH_REX_BUILD, + DEPTH_REX_MATCH = HAWK_DEPTH_REX_MATCH }; /// The gbl_id_t type redefines #hawk_gbl_id_t. @@ -120,16 +124,16 @@ protected: /// to customize an error message. You must include the same numbers /// of ${X}'s as the orginal formatting string. Their order may be /// different. The example below changes the formatting string for - /// #HAWK_AWK_ENOENT. + /// #HAWK_ENOENT. /// \code - /// const MyHawk::char_t* MyHawk::getErrorString (errnum_t num) const + /// const hawk_ooch_t* MyHawk::getErrorString (hawk_errnum_t num) const /// { - /// if (num == HAWK_AWK_ENOENT) return HAWK_T("cannot find '${0}'"); + /// if (num == HAWK_ENOENT) return HAWK_T("cannot find '${0}'"); /// return Hawk::getErrorString (num); /// } /// \endcode /// - virtual const char_t* getErrorString ( + virtual const hawk_ooch_t* getErrorString ( errnum_t num ) const; @@ -150,14 +154,14 @@ public: /// The Hawk::getErrorMessage() function returns a message describing /// the last error occurred. /// - const char_t* getErrorMessage () const; + const hawk_ooch_t* getErrorMessage () const; /// /// The setError() function sets error information. /// void setError ( errnum_t code, ///< error code - const oocs_t* args = HAWK_NULL, ///< message formatting + const hawk_oocs_t* args = HAWK_NULL, ///< message formatting /// argument array const loc_t* loc = HAWK_NULL ///< error location ); @@ -168,7 +172,7 @@ public: /// void setErrorWithMessage ( errnum_t code, ///< error code - const char_t* msg, ///< error message + const hawk_ooch_t* msg, ///< error message const loc_t* loc ///< error location ); @@ -229,19 +233,19 @@ public: return this->arg->prev == HAWK_NULL; } - const char_t* getName() const + const hawk_ooch_t* getName() const { return this->arg->name; } // since it doesn't copy the contents, // it should point to something that outlives this object. - void setName (const char_t* name) + void setName (const hawk_ooch_t* name) { this->arg->name = name; } - const char_t* getPrevName() const + const hawk_ooch_t* getPrevName() const { return this->arg->prev->name; } @@ -282,8 +286,8 @@ public: virtual int open (Data& io) = 0; virtual int close (Data& io) = 0; - virtual ssize_t read (Data& io, char_t* buf, size_t len) = 0; - virtual ssize_t write (Data& io, const char_t* buf, size_t len) = 0; + virtual hawk_ooi_t read (Data& io, hawk_ooch_t* buf, hawk_oow_t len) = 0; + virtual hawk_ooi_t write (Data& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0; /// /// The NONE object indicates no source. @@ -301,8 +305,8 @@ protected: public: int open (Data& io) { return -1; } int close (Data& io) { return 0; } - ssize_t read (Data& io, char_t* buf, size_t len) { return 0; } - ssize_t write (Data& io, const char_t* buf, size_t len) { return 0; } + hawk_ooi_t read (Data& io, hawk_ooch_t* buf, hawk_oow_t len) { return 0; } + hawk_ooi_t write (Data& io, const hawk_ooch_t* buf, hawk_oow_t len) { return 0; } }; public: @@ -317,7 +321,7 @@ public: RIOBase (Run* run, rio_arg_t* riod); public: - const char_t* getName() const; + const hawk_ooch_t* getName() const; const void* getHandle () const; void setHandle (void* handle); @@ -353,11 +357,11 @@ public: enum Mode { /// open for read-only access - READ = HAWK_AWK_RIO_PIPE_READ, + READ = HAWK_RIO_PIPE_READ, /// open for write-only access - WRITE = HAWK_AWK_RIO_PIPE_WRITE, + WRITE = HAWK_RIO_PIPE_WRITE, /// open for read and write - RW = HAWK_AWK_RIO_PIPE_RW + RW = HAWK_RIO_PIPE_RW }; /// The CloseMode type defines the closing mode for a pipe @@ -365,11 +369,11 @@ public: enum CloseMode { /// close both read and write ends - CLOSE_FULL = HAWK_AWK_RIO_CLOSE_FULL, + CLOSE_FULL = HAWK_RIO_CMD_CLOSE_FULL, /// close the read end only - CLOSE_READ = HAWK_AWK_RIO_CLOSE_READ, + CLOSE_READ = HAWK_RIO_CMD_CLOSE_READ, /// close the write end only - CLOSE_WRITE = HAWK_AWK_RIO_CLOSE_WRITE + CLOSE_WRITE = HAWK_RIO_CMD_CLOSE_WRITE }; class HAWK_EXPORT Handler @@ -379,9 +383,9 @@ public: virtual int open (Pipe& io) = 0; virtual int close (Pipe& io) = 0; - virtual ssize_t read (Pipe& io, char_t* buf, size_t len) = 0; - virtual ssize_t write (Pipe& io, const char_t* buf, size_t len) = 0; - virtual ssize_t writeBytes (Pipe& io, const hawk_bch_t* buf, size_t len) = 0; + virtual hawk_ooi_t read (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len) = 0; + virtual hawk_ooi_t write (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0; + virtual hawk_ooi_t writeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len) = 0; virtual int flush (Pipe& io) = 0; }; @@ -412,9 +416,9 @@ public: enum Mode { - READ = HAWK_AWK_RIO_FILE_READ, - WRITE = HAWK_AWK_RIO_FILE_WRITE, - APPEND = HAWK_AWK_RIO_FILE_APPEND + READ = HAWK_RIO_FILE_READ, + WRITE = HAWK_RIO_FILE_WRITE, + APPEND = HAWK_RIO_FILE_APPEND }; class HAWK_EXPORT Handler @@ -424,9 +428,9 @@ public: virtual int open (File& io) = 0; virtual int close (File& io) = 0; - virtual ssize_t read (File& io, char_t* buf, size_t len) = 0; - virtual ssize_t write (File& io, const char_t* buf, size_t len) = 0; - virtual ssize_t writeBytes (File& io, const hawk_bch_t* buf, size_t len) = 0; + virtual hawk_ooi_t read (File& io, hawk_ooch_t* buf, hawk_oow_t len) = 0; + virtual hawk_ooi_t write (File& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0; + virtual hawk_ooi_t writeBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len) = 0; virtual int flush (File& io) = 0; }; @@ -449,8 +453,8 @@ public: /// Console mode enumerators enum Mode { - READ = HAWK_AWK_RIO_CONSOLE_READ, ///< open for input - WRITE = HAWK_AWK_RIO_CONSOLE_WRITE ///< open for output + READ = HAWK_RIO_CONSOLE_READ, ///< open for input + WRITE = HAWK_RIO_CONSOLE_WRITE ///< open for output }; /// @@ -481,16 +485,16 @@ public: /// data not more than \a len characters and return the /// number of characters filled into the buufer. It can /// return 0 to indicate EOF and -1 for failure. - virtual ssize_t read (Console& io, char_t* buf, size_t len) = 0; + virtual hawk_ooi_t read (Console& io, hawk_ooch_t* buf, hawk_oow_t len) = 0; /// The write() function is called when the console /// is written for output. It can write upto \a len characters /// available in the buffer \a buf and return the number of /// characters written. It can return 0 to indicate EOF and -1 /// for failure. - virtual ssize_t write (Console& io, const char_t* buf, size_t len) = 0; + virtual hawk_ooi_t write (Console& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0; - virtual ssize_t writeBytes (Console& io, const hawk_bch_t* buf, size_t len) = 0; + virtual hawk_ooi_t writeBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len) = 0; /// You may choose to buffer the data passed to the write() /// function and perform actual writing when flush() is called. @@ -512,11 +516,11 @@ public: /// opened for reading or writing. Mode getMode () const; - int setFileName (const char_t* name); + int setFileName (const hawk_ooch_t* name); int setFNR (int_t fnr); protected: - char_t* filename; + hawk_ooch_t* filename; }; @@ -529,10 +533,10 @@ public: public: friend class Hawk; - #if defined(HAWK_AWK_VALUE_USE_IN_CLASS_PLACEMENT_NEW) + #if defined(HAWK_VALUE_USE_IN_CLASS_PLACEMENT_NEW) // initialization - void* operator new (size_t n, Run* run) throw (); - void* operator new[] (size_t n, Run* run) throw (); + void* operator new (hawk_oow_t n, Run* run) throw (); + void* operator new[] (hawk_oow_t n, Run* run) throw (); #if !defined(__BORLANDC__) && !defined(__WATCOMC__) // deletion when initialization fails @@ -556,14 +560,14 @@ public: /// The Index() function creates an empty array index. Index () { - this->ptr = (char_t*)Value::getEmptyStr(); + this->ptr = (hawk_ooch_t*)Value::getEmptyStr(); this->len = 0; } /// The Index() function creates a string array index. - Index (const char_t* ptr, size_t len) + Index (const hawk_ooch_t* ptr, hawk_oow_t len) { - this->ptr = (char_t*)ptr; + this->ptr = (hawk_ooch_t*)ptr; this->len = len; } @@ -579,12 +583,12 @@ public: return *this; } - const char_t* pointer () const + const hawk_ooch_t* pointer () const { return this->ptr; } - size_t length () const + hawk_oow_t length () const { return this->len; } @@ -609,11 +613,11 @@ public: # error SIZEOF(int_t) TOO LARGE. # error INCREASE THE BUFFER SIZE TO SUPPORT IT. #elif HAWK_SIZEOF_LONG_T == 16 - char_t buf[41]; + hawk_ooch_t buf[41]; #elif HAWK_SIZEOF_LONG_T == 8 - char_t buf[21]; + hawk_ooch_t buf[21]; #else - char_t buf[12]; + hawk_ooch_t buf[12]; #endif }; @@ -643,7 +647,7 @@ public: } protected: - IndexIterator (hawk_htb_pair_t* pair, size_t buckno) + IndexIterator (hawk_htb_pair_t* pair, hawk_oow_t buckno) { this->pair = pair; this->buckno = buckno; @@ -691,7 +695,7 @@ public: operator val_t* () const { return val; } operator int_t () const; operator flt_t () const; - operator const char_t* () const; + operator const hawk_ooch_t* () const; #if defined(HAWK_OOCH_IS_UCH) operator const hawk_bch_t* () const; #endif @@ -711,10 +715,10 @@ public: return operator flt_t (); } - const char_t* toStr (size_t* len) const + const hawk_ooch_t* toStr (hawk_oow_t* len) const { - const char_t* p; - size_t l; + const hawk_ooch_t* p; + hawk_oow_t l; if (this->getStr(&p, &l) <= -1) { @@ -726,10 +730,10 @@ public: return p; } - const hawk_bch_t* toMbs (size_t* len) const + const hawk_bch_t* toMbs (hawk_oow_t* len) const { const hawk_bch_t* p; - size_t l; + hawk_oow_t l; if (this->getMbs(&p, &l) <= -1) { @@ -744,8 +748,8 @@ public: int getInt (int_t* v) const; int getFlt (flt_t* v) const; int getNum (int_t* lv, flt_t* fv) const; - int getStr (const char_t** str, size_t* len) const; - int getMbs (const hawk_bch_t** str, size_t* len) const; + int getStr (const hawk_ooch_t** str, hawk_oow_t* len) const; + int getMbs (const hawk_bch_t** str, hawk_oow_t* len) const; int setVal (val_t* v); int setVal (Run* r, val_t* v); @@ -755,13 +759,13 @@ public: int setFlt (flt_t v); int setFlt (Run* r, flt_t v); - int setStr (const char_t* str, size_t len, bool numeric = false); - int setStr (Run* r, const char_t* str, size_t len, bool numeric = false); - int setStr (const char_t* str, bool numeric = false); - int setStr (Run* r, const char_t* str, bool numeric = false); + int setStr (const hawk_ooch_t* str, hawk_oow_t len, bool numeric = false); + int setStr (Run* r, const hawk_ooch_t* str, hawk_oow_t len, bool numeric = false); + int setStr (const hawk_ooch_t* str, bool numeric = false); + int setStr (Run* r, const hawk_ooch_t* str, bool numeric = false); - int setMbs (const hawk_bch_t* str, size_t len); - int setMbs (Run* r, const hawk_bch_t* str, size_t len); + int setMbs (const hawk_bch_t* str, hawk_oow_t len); + int setMbs (Run* r, const hawk_bch_t* str, hawk_oow_t len); int setMbs (const hawk_bch_t* str); int setMbs (Run* r, const hawk_bch_t* str); @@ -772,13 +776,13 @@ public: int setIndexedFlt (const Index& idx, flt_t v); int setIndexedFlt (Run* r, const Index& idx, flt_t v); - int setIndexedStr (const Index& idx, const char_t* str, size_t len, bool numeric = false); - int setIndexedStr (Run* r, const Index& idx, const char_t* str, size_t len, bool numeric = false); - int setIndexedStr (const Index& idx, const char_t* str, bool numeric = false); - int setIndexedStr (Run* r, const Index& idx, const char_t* str, bool numeric = false); + int setIndexedStr (const Index& idx, const hawk_ooch_t* str, hawk_oow_t len, bool numeric = false); + int setIndexedStr (Run* r, const Index& idx, const hawk_ooch_t* str, hawk_oow_t len, bool numeric = false); + int setIndexedStr (const Index& idx, const hawk_ooch_t* str, bool numeric = false); + int setIndexedStr (Run* r, const Index& idx, const hawk_ooch_t* str, bool numeric = false); - int setIndexedMbs (const Index& idx, const hawk_bch_t* str, size_t len); - int setIndexedMbs (Run* r, const Index& idx, const hawk_bch_t* str, size_t len); + int setIndexedMbs (const Index& idx, const hawk_bch_t* str, hawk_oow_t len); + int setIndexedMbs (Run* r, const Index& idx, const hawk_bch_t* str, hawk_oow_t len); int setIndexedMbs (const Index& idx, const hawk_bch_t* str); int setIndexedMbs (Run* r, const Index& idx, const hawk_bch_t* str); @@ -831,7 +835,7 @@ public: } cached; public: - static const char_t* getEmptyStr(); + static const hawk_ooch_t* getEmptyStr(); static const hawk_bch_t* getEmptyMbs(); }; @@ -861,17 +865,17 @@ public: errnum_t getErrorNumber () const; loc_t getErrorLocation () const; - const char_t* getErrorMessage () const; + const hawk_ooch_t* getErrorMessage () const; void setError ( errnum_t code, - const oocs_t* args = HAWK_NULL, + const hawk_oocs_t* args = HAWK_NULL, const loc_t* loc = HAWK_NULL ); void setErrorWithMessage ( errnum_t code, - const char_t* msg, + const hawk_ooch_t* msg, const loc_t* loc ); @@ -898,7 +902,7 @@ public: /// \a ptr. /// \return 0 on success, -1 on failure /// - int setGlobal (int id, const char_t* ptr, size_t len); + int setGlobal (int id, const hawk_ooch_t* ptr, hawk_oow_t len); /// /// The setGlobal() function sets a global variable @@ -1028,7 +1032,7 @@ public: const hawk_bch_t* name, ///< function name Value* ret, ///< return value holder const Value* args, ///< argument array - size_t nargs ///< number of arguments + hawk_oow_t nargs ///< number of arguments ); /// @@ -1038,7 +1042,7 @@ public: const hawk_uch_t* name, ///< function name Value* ret, ///< return value holder const Value* args, ///< argument array - size_t nargs ///< number of arguments + hawk_oow_t nargs ///< number of arguments ); /// @@ -1071,14 +1075,14 @@ public: /// void setMaxDepth ( depth_t id, ///< depth identifier - size_t depth ///< new depth + hawk_oow_t depth ///< new depth ); /// /// The getMaxDepth() function gets the maximum depth for an operation /// type identified by \a id. /// - size_t getMaxDepth ( + hawk_oow_t getMaxDepth ( depth_t id ///< depth identifier ) const; @@ -1090,8 +1094,8 @@ public: /// \return 0 on success, -1 on failure /// int addArgument ( - const char_t* arg, ///< string pointer - size_t len ///< string length + const hawk_ooch_t* arg, ///< string pointer + hawk_oow_t len ///< string length ); /// @@ -1101,7 +1105,7 @@ public: /// \return 0 on success, -1 on failure /// int addArgument ( - const char_t* arg ///< string pointer + const hawk_ooch_t* arg ///< string pointer ); /// @@ -1177,7 +1181,7 @@ public: Run& run, Value& ret, Value* args, - size_t nargs, + hawk_oow_t nargs, const fnc_info_t* fi ); @@ -1187,8 +1191,8 @@ public: /// int addFunction ( const hawk_bch_t* name, ///< function name - size_t minArgs, ///< minimum numbers of arguments - size_t maxArgs, ///< maximum numbers of arguments + hawk_oow_t minArgs, ///< minimum numbers of arguments + hawk_oow_t maxArgs, ///< maximum numbers of arguments const hawk_bch_t* argSpec, ///< argument specification FunctionHandler handler, ///< function handler int validOpts = 0 ///< valid if these options are set @@ -1196,8 +1200,8 @@ public: int addFunction ( const hawk_uch_t* name, ///< function name - size_t minArgs, ///< minimum numbers of arguments - size_t maxArgs, ///< maximum numbers of arguments + hawk_oow_t minArgs, ///< minimum numbers of arguments + hawk_oow_t maxArgs, ///< maximum numbers of arguments const hawk_uch_t* argSpec, ///< argument specification FunctionHandler handler, ///< function handler int validOpts = 0 ///< valid if these options are set @@ -1208,7 +1212,7 @@ public: /// function by name. /// int deleteFunction ( - const char_t* name ///< function name + const hawk_ooch_t* name ///< function name ); /// \} @@ -1295,9 +1299,9 @@ protected: /// on success and -1 on failure. virtual int closePipe (Pipe& io); - virtual ssize_t readPipe (Pipe& io, char_t* buf, size_t len); - virtual ssize_t writePipe (Pipe& io, const char_t* buf, size_t len); - virtual ssize_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, size_t len); + virtual hawk_ooi_t readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len); + virtual hawk_ooi_t writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len); + virtual hawk_ooi_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len); virtual int flushPipe (Pipe& io); /// \} @@ -1309,9 +1313,9 @@ protected: /// virtual int openFile (File& io); virtual int closeFile (File& io); - virtual ssize_t readFile (File& io, char_t* buf, size_t len); - virtual ssize_t writeFile (File& io, const char_t* buf, size_t len); - virtual ssize_t writeFileBytes (File& io, const hawk_bch_t* buf, size_t len); + virtual hawk_ooi_t readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len); + virtual hawk_ooi_t writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len); + virtual hawk_ooi_t writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len); virtual int flushFile (File& io); /// \} @@ -1323,9 +1327,9 @@ protected: /// virtual int openConsole (Console& io); virtual int closeConsole (Console& io); - virtual ssize_t readConsole (Console& io, char_t* buf, size_t len); - virtual ssize_t writeConsole (Console& io, const char_t* buf, size_t len); - virtual ssize_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, size_t len); + virtual hawk_ooi_t readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len); + virtual hawk_ooi_t writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len); + virtual hawk_ooi_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len); virtual int flushConsole (Console& io); virtual int nextConsole (Console& io); /// \} @@ -1336,25 +1340,25 @@ protected: virtual void* modopen (const mod_spec_t* spec) = 0; virtual void modclose (void* handle) = 0; - virtual void* modsym (void* handle, const char_t* name) = 0; + virtual void* modgetsym (void* handle, const hawk_ooch_t* name) = 0; // static glue members for various handlers - static ssize_t readSource ( + static hawk_ooi_t readSource ( awk_t* awk, sio_cmd_t cmd, sio_arg_t* arg, - char_t* data, size_t count); - static ssize_t writeSource ( + hawk_ooch_t* data, hawk_oow_t count); + static hawk_ooi_t writeSource ( awk_t* awk, sio_cmd_t cmd, sio_arg_t* arg, - char_t* data, size_t count); + hawk_ooch_t* data, hawk_oow_t count); - static ssize_t pipeHandler ( + static hawk_ooi_t pipeHandler ( rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, - void* data, size_t count); - static ssize_t fileHandler ( + void* data, hawk_oow_t count); + static hawk_ooi_t fileHandler ( rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, - void* data, size_t count); - static ssize_t consoleHandler ( + void* data, hawk_oow_t count); + static hawk_ooi_t consoleHandler ( rtx_t* rtx, rio_cmd_t cmd, rio_arg_t* riod, - void* data, size_t count); + void* data, hawk_oow_t count); static int functionHandler (rtx_t* rtx, const fnc_info_t* fi); @@ -1364,7 +1368,7 @@ protected: static void* modopen (awk_t* awk, const mod_spec_t* spec); static void modclose (awk_t* awk, void* handle); - static void* modsym (awk_t* awk, void* handle, const char_t* name); + static void* modsym (awk_t* awk, void* handle, const hawk_ooch_t* name); public: // use this with care @@ -1376,7 +1380,7 @@ protected: errstr_t dflerrstr; errinf_t errinf; -#if defined(HAWK_AWK_USE_HTB_FOR_FUNCTION_MAP) +#if defined(HAWK_USE_HTB_FOR_FUNCTION_MAP) hawk_htb_t* functionMap; #else @@ -1403,12 +1407,12 @@ protected: { xstrs_t (): ptr (HAWK_NULL), len (0), capa (0) {} - int add (awk_t* awk, const char_t* arg, size_t len); + int add (awk_t* awk, const hawk_ooch_t* arg, hawk_oow_t len); void clear (awk_t* awk); hawk_oocs_t* ptr; - size_t len; - size_t capa; + hawk_oow_t len; + hawk_oow_t capa; }; xstrs_t runarg; @@ -1420,7 +1424,7 @@ private: void fini_runctx (); int dispatch_function (Run* run, const fnc_info_t* fi); - static const char_t* xerrstr (awk_t* a, errnum_t num); + static const hawk_ooch_t* xerrstr (awk_t* a, errnum_t num); }; ///////////////////////////////// diff --git a/hawk/lib/StdHawk.cpp b/hawk/lib/StdHawk.cpp index a2be814f..7df7c1b5 100644 --- a/hawk/lib/StdHawk.cpp +++ b/hawk/lib/StdHawk.cpp @@ -61,8 +61,8 @@ static hawk_sio_t* open_sio (Hawk* awk, StdHawk::Run* run, const hawk_ooch_t* fi if (sio == HAWK_NULL) { hawk_oocs_t ea; - ea.ptr = (StdHawk::char_t*)file; - ea.len = hawk_strlen (file); + ea.ptr = (hawk_ooch_t*)file; + ea.len = hawk_count_oocstr (file); if (run) run->setError (HAWK_EOPEN, &ea); else awk->setError (HAWK_EOPEN, &ea); } @@ -72,7 +72,7 @@ static hawk_sio_t* open_sio (Hawk* awk, StdHawk::Run* run, const hawk_ooch_t* fi static hawk_sio_t* open_sio_std (Hawk* awk, StdHawk::Run* run, hawk_sio_std_t std, int flags) { hawk_sio_t* sio; - static const StdHawk::char_t* std_names[] = + static const hawk_ooch_t* std_names[] = { HAWK_T("stdin"), HAWK_T("stdout"), @@ -84,8 +84,8 @@ static hawk_sio_t* open_sio_std (Hawk* awk, StdHawk::Run* run, hawk_sio_std_t st if (sio == HAWK_NULL) { hawk_oocs_t ea; - ea.ptr = (StdHawk::char_t*)std_names[std]; - ea.len = hawk_strlen (std_names[std]); + ea.ptr = (hawk_ooch_t*)std_names[std]; + ea.len = hawk_count_oocstr (std_names[std]); if (run) run->setError (HAWK_EOPEN, &ea); else awk->setError (HAWK_EOPEN, &ea); } @@ -211,7 +211,7 @@ int StdHawk::build_argcv (Run* run) { Value argv (run); - for (size_t i = 0; i < this->runarg.len; i++) + for (hawk_oow_t i = 0; i < this->runarg.len; i++) { if (argv.setIndexedStr ( Value::IntIndex(i), @@ -226,12 +226,12 @@ int StdHawk::build_argcv (Run* run) int StdHawk::__build_environ (Run* run, void* envptr) { - hawk_env_char_t** envarr = (hawk_env_char_t**)envptr; + hawk_env_hawk_ooch_t** envarr = (hawk_env_hawk_ooch_t**)envptr; Value v_env (run); if (envarr) { - hawk_env_char_t* eq; + hawk_env_hawk_ooch_t* eq; hawk_ooch_t* kptr, * vptr; hawk_oow_t klen, count; hawk_mmgr_t* mmgr = ((Hawk*)*run)->getMmgr(); @@ -332,18 +332,18 @@ int StdHawk::make_additional_globals (Run* run) return 0; } -hawk_cmgr_t* StdHawk::getiocmgr (const char_t* ioname) +hawk_cmgr_t* StdHawk::getiocmgr (const hawk_ooch_t* ioname) { HAWK_ASSERT (this->cmgrtab_inited == true); #if defined(HAWK_OOCH_IS_UCH) - ioattr_t* ioattr = get_ioattr(ioname, hawk_strlen(ioname)); + ioattr_t* ioattr = get_ioattr(ioname, hawk_count_oocstr(ioname)); if (ioattr) return ioattr->cmgr; #endif return HAWK_NULL; } -StdHawk::ioattr_t* StdHawk::get_ioattr (const char_t* ptr, size_t len) +StdHawk::ioattr_t* StdHawk::get_ioattr (const hawk_ooch_t* ptr, hawk_oow_t len) { hawk_htb_pair_t* pair; @@ -353,7 +353,7 @@ StdHawk::ioattr_t* StdHawk::get_ioattr (const char_t* ptr, size_t len) return (ioattr_t*)HAWK_HTB_VPTR(pair); } -StdHawk::ioattr_t* StdHawk::find_or_make_ioattr (const char_t* ptr, size_t len) +StdHawk::ioattr_t* StdHawk::find_or_make_ioattr (const hawk_ooch_t* ptr, hawk_oow_t len) { hawk_htb_pair_t* pair; @@ -384,12 +384,12 @@ static int timeout_code (const hawk_ooch_t* name) } int StdHawk::setioattr ( - Run& run, Value& ret, Value* args, size_t nargs, - const char_t* name, size_t len) + Run& run, Value& ret, Value* args, hawk_oow_t nargs, + const hawk_ooch_t* name, hawk_oow_t len) { HAWK_ASSERT (this->cmgrtab_inited == true); - size_t l[3]; - const char_t* ptr[3]; + hawk_oow_t l[3]; + const hawk_ooch_t* ptr[3]; ptr[0] = args[0].toStr(&l[0]); ptr[1] = args[1].toStr(&l[1]); @@ -459,12 +459,12 @@ int StdHawk::setioattr ( } int StdHawk::getioattr ( - Run& run, Value& ret, Value* args, size_t nargs, - const char_t* name, size_t len) + Run& run, Value& ret, Value* args, hawk_oow_t nargs, + const hawk_ooch_t* name, hawk_oow_t len) { HAWK_ASSERT (this->cmgrtab_inited == true); - size_t l[2]; - const char_t* ptr[2]; + hawk_oow_t l[2]; + const hawk_ooch_t* ptr[2]; ptr[0] = args[0].toStr(&l[0]); ptr[1] = args[1].toStr(&l[1]); @@ -505,7 +505,7 @@ int StdHawk::open_nwio (Pipe& io, int flags, void* nwad) hawk_nwio_tmout_t* tmout = HAWK_NULL; const hawk_ooch_t* name = io.getName(); - ioattr_t* ioattr = get_ioattr (name, hawk_strlen(name)); + ioattr_t* ioattr = get_ioattr (name, hawk_count_oocstr(name)); if (ioattr) { tmout = &tmout_buf; @@ -596,7 +596,7 @@ static int parse_rwpipe_uri (const hawk_ooch_t* uri, int* flags, hawk_nwad_t* nw { HAWK_T("tcpd://"), 7, HAWK_NWIO_TCP | HAWK_NWIO_PASSIVE }, { HAWK_T("udpd://"), 7, HAWK_NWIO_UDP | HAWK_NWIO_PASSIVE } }; - StdHawk::size_t i; + hawk_oow_t i; for (i = 0; i < HAWK_COUNTOF(x); i++) { @@ -657,21 +657,21 @@ int StdHawk::closePipe (Pipe& io) return 0; } -StdHawk::ssize_t StdHawk::readPipe (Pipe& io, char_t* buf, size_t len) +hawk_ooi_t StdHawk::readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len) { return (io.getUflags() > 0)? hawk_nwio_read ((hawk_nwio_t*)io.getHandle(), buf, len): hawk_pio_read ((hawk_pio_t*)io.getHandle(), HAWK_PIO_OUT, buf, len); } -StdHawk::ssize_t StdHawk::writePipe (Pipe& io, const char_t* buf, size_t len) +hawk_ooi_t StdHawk::writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len) { return (io.getUflags() > 0)? hawk_nwio_write((hawk_nwio_t*)io.getHandle(), buf, len): hawk_pio_write((hawk_pio_t*)io.getHandle(), HAWK_PIO_IN, buf, len); } -StdHawk::ssize_t StdHawk::writePipeBytes (Pipe& io, const hawk_bch_t* buf, size_t len) +hawk_ooi_t StdHawk::writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len) { return (io.getUflags() > 0)? hawk_nwio_writebytes((hawk_nwio_t*)io.getHandle(), buf, len): @@ -724,17 +724,17 @@ int StdHawk::closeFile (File& io) return 0; } -StdHawk::ssize_t StdHawk::readFile (File& io, char_t* buf, size_t len) +hawk_ooi_t StdHawk::readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len) { return hawk_sio_getoochars((hawk_sio_t*)io.getHandle(), buf, len); } -StdHawk::ssize_t StdHawk::writeFile (File& io, const char_t* buf, size_t len) +hawk_ooi_t StdHawk::writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len) { return hawk_sio_putoochars((hawk_sio_t*)io.getHandle(), buf, len); } -StdHawk::ssize_t StdHawk::writeFileBytes (File& io, const hawk_bch_t* buf, size_t len) +hawk_ooi_t StdHawk::writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len) { return hawk_sio_putbchars((hawk_sio_t*)io.getHandle(), buf, len); } @@ -755,7 +755,7 @@ const hawk_cmgr_t* StdHawk::getConsoleCmgr () const return this->console_cmgr; } -int StdHawk::addConsoleOutput (const char_t* arg, size_t len) +int StdHawk::addConsoleOutput (const hawk_ooch_t* arg, hawk_oow_t len) { HAWK_ASSERT (awk != HAWK_NULL); int n = this->ofile.add (awk, arg, len); @@ -763,9 +763,9 @@ int StdHawk::addConsoleOutput (const char_t* arg, size_t len) return n; } -int StdHawk::addConsoleOutput (const char_t* arg) +int StdHawk::addConsoleOutput (const hawk_ooch_t* arg) { - return addConsoleOutput (arg, hawk_strlen(arg)); + return addConsoleOutput (arg, hawk_count_oocstr(arg)); } void StdHawk::clearConsoleOutputs () @@ -844,11 +844,11 @@ int StdHawk::open_console_in (Console& io) return 0; } - if (hawk_strlen(file) != this->runarg.ptr[this->runarg_index].len) + if (hawk_count_oocstr(file) != this->runarg.ptr[this->runarg_index].len) { - oocs_t arg; - arg.ptr = (char_t*)file; - arg.len = hawk_strlen (arg.ptr); + hawk_oocs_t arg; + arg.ptr = (hawk_ooch_t*)file; + arg.len = hawk_count_oocstr (arg.ptr); ((Run*)io)->setError (HAWK_EIONMNL, &arg); return -1; } @@ -888,12 +888,12 @@ int StdHawk::open_console_in (Console& io) goto nextfile; } - if (hawk_strlen(as.ptr) < as.len) + if (hawk_count_oocstr(as.ptr) < as.len) { /* the name contains one or more '\0' */ - oocs_t arg; + hawk_oocs_t arg; arg.ptr = as.ptr; - arg.len = hawk_strlen (as.ptr); + arg.len = hawk_count_oocstr (as.ptr); ((Run*)io)->setError (HAWK_EIONMNL, &arg); hawk_rtx_freevaloocstr (rtx, v, as.ptr); return -1; @@ -911,7 +911,7 @@ int StdHawk::open_console_in (Console& io) return -1; } - if (hawk_rtx_setfilename (rtx, file, hawk_strlen(file)) <= -1) + if (hawk_rtx_setfilename (rtx, file, hawk_count_oocstr(file)) <= -1) { hawk_sio_close (sio); hawk_rtx_freevaloocstr (rtx, v, as.ptr); @@ -973,11 +973,11 @@ int StdHawk::open_console_out (Console& io) return 0; } - if (hawk_strlen(file) != this->ofile.ptr[this->ofile_index].len) + if (hawk_count_oocstr(file) != this->ofile.ptr[this->ofile_index].len) { - oocs_t arg; - arg.ptr = (char_t*)file; - arg.len = hawk_strlen (arg.ptr); + hawk_oocs_t arg; + arg.ptr = (hawk_ooch_t*)file; + arg.len = hawk_count_oocstr (arg.ptr); ((Run*)io)->setError (HAWK_EIONMNL, &arg); return -1; } @@ -989,7 +989,7 @@ int StdHawk::open_console_out (Console& io) if (sio == HAWK_NULL) return -1; if (hawk_rtx_setofilename ( - rtx, file, hawk_strlen(file)) == -1) + rtx, file, hawk_count_oocstr(file)) == -1) { hawk_sio_close (sio); return -1; @@ -1036,9 +1036,9 @@ int StdHawk::closeConsole (Console& io) return 0; } -StdHawk::ssize_t StdHawk::readConsole (Console& io, char_t* data, size_t size) +hawk_ooi_t StdHawk::readConsole (Console& io, hawk_ooch_t* data, hawk_oow_t size) { - hawk_ssize_t nn; + hawk_ooi_t nn; while ((nn = hawk_sio_getoochars((hawk_sio_t*)io.getHandle(),data,size)) == 0) { @@ -1060,12 +1060,12 @@ StdHawk::ssize_t StdHawk::readConsole (Console& io, char_t* data, size_t size) return nn; } -StdHawk::ssize_t StdHawk::writeConsole (Console& io, const char_t* data, size_t size) +hawk_ooi_t StdHawk::writeConsole (Console& io, const hawk_ooch_t* data, hawk_oow_t size) { return hawk_sio_putoochars((hawk_sio_t*)io.getHandle(), data, size); } -StdHawk::ssize_t StdHawk::writeConsoleBytes (Console& io, const hawk_bch_t* data, size_t size) +hawk_ooi_t StdHawk::writeConsoleBytes (Console& io, const hawk_bch_t* data, hawk_oow_t size) { return hawk_sio_putbchars((hawk_sio_t*)io.getHandle(), data, size); } @@ -1095,12 +1095,12 @@ int StdHawk::nextConsole (Console& io) } // memory allocation primitives -void* StdHawk::allocMem (size_t n) +void* StdHawk::allocMem (hawk_oow_t n) { return ::malloc (n); } -void* StdHawk::reallocMem (void* ptr, size_t n) +void* StdHawk::reallocMem (void* ptr, hawk_oow_t n) { return ::realloc (ptr, n); } @@ -1135,10 +1135,10 @@ void StdHawk::modclose (void* handle) hawk_stdmodclose (this->awk, handle); } -void* StdHawk::modsym (void* handle, const hawk_ooch_t* name) +void* StdHawk::modgetsym (void* handle, const hawk_ooch_t* name) { void* s; - s = hawk_stdmodsym (this->awk, handle, name); + s = hawk_stdmodgetsym (this->awk, handle, name); if (!s) this->retrieveError (); return s; } @@ -1181,9 +1181,9 @@ int StdHawk::SourceFile::open (Data& io) else { // open an included file - const char_t* ioname, * file; - char_t fbuf[64]; - char_t* dbuf = HAWK_NULL; + const hawk_ooch_t* ioname, * file; + hawk_ooch_t fbuf[64]; + hawk_ooch_t* dbuf = HAWK_NULL; ioname = io.getName(); HAWK_ASSERT (ioname != HAWK_NULL); @@ -1201,10 +1201,10 @@ int StdHawk::SourceFile::open (Data& io) base = hawk_basename(outer); if (base != outer && ioname[0] != HAWK_T('/')) { - size_t tmplen, totlen, dirlen; + hawk_oow_t tmplen, totlen, dirlen; dirlen = base - outer; - totlen = hawk_strlen(ioname) + dirlen; + totlen = hawk_count_oocstr(ioname) + dirlen; if (totlen >= HAWK_COUNTOF(fbuf)) { dbuf = (hawk_ooch_t*) HAWK_MMGR_ALLOC ( @@ -1221,8 +1221,8 @@ int StdHawk::SourceFile::open (Data& io) } else file = fbuf; - tmplen = hawk_copy_oochars_to_oocstr_unlimited ((char_t*)file, outer, dirlen); - hawk_copy_oocstr_unlimited ((char_t*)file + tmplen, ioname); + tmplen = hawk_copy_oochars_to_oocstr_unlimited ((hawk_ooch_t*)file, outer, dirlen); + hawk_copy_oocstr_unlimited ((hawk_ooch_t*)file + tmplen, ioname); } } } @@ -1250,12 +1250,12 @@ int StdHawk::SourceFile::close (Data& io) return 0; } -StdHawk::ssize_t StdHawk::SourceFile::read (Data& io, char_t* buf, size_t len) +hawk_ooi_t StdHawk::SourceFile::read (Data& io, hawk_ooch_t* buf, hawk_oow_t len) { return hawk_sio_getoochars ((hawk_sio_t*)io.getHandle(), buf, len); } -StdHawk::ssize_t StdHawk::SourceFile::write (Data& io, const char_t* buf, size_t len) +hawk_ooi_t StdHawk::SourceFile::write (Data& io, const hawk_ooch_t* buf, hawk_oow_t len) { return hawk_sio_putoochars ((hawk_sio_t*)io.getHandle(), buf, len); } @@ -1275,9 +1275,9 @@ int StdHawk::SourceString::open (Data& io) { // open an included file - const char_t* ioname, * file; - char_t fbuf[64]; - char_t* dbuf = HAWK_NULL; + const hawk_ooch_t* ioname, * file; + hawk_ooch_t fbuf[64]; + hawk_ooch_t* dbuf = HAWK_NULL; ioname = io.getName(); HAWK_ASSERT (ioname != HAWK_NULL); @@ -1295,10 +1295,10 @@ int StdHawk::SourceString::open (Data& io) base = hawk_basename(outer); if (base != outer && ioname[0] != HAWK_T('/')) { - size_t tmplen, totlen, dirlen; + hawk_oow_t tmplen, totlen, dirlen; dirlen = base - outer; - totlen = hawk_strlen(ioname) + dirlen; + totlen = hawk_count_oocstr(ioname) + dirlen; if (totlen >= HAWK_COUNTOF(fbuf)) { dbuf = (hawk_ooch_t*)HAWK_MMGR_ALLOC( @@ -1315,8 +1315,8 @@ int StdHawk::SourceString::open (Data& io) } else file = fbuf; - tmplen = hawk_copy_oochars_to_oocstr_unlimited ((char_t*)file, outer, dirlen); - hawk_copy_oocstr_unlimited ((char_t*)file + tmplen, ioname); + tmplen = hawk_copy_oochars_to_oocstr_unlimited ((hawk_ooch_t*)file, outer, dirlen); + hawk_copy_oocstr_unlimited ((hawk_ooch_t*)file + tmplen, ioname); } } } @@ -1342,7 +1342,7 @@ int StdHawk::SourceString::close (Data& io) return 0; } -StdHawk::ssize_t StdHawk::SourceString::read (Data& io, char_t* buf, size_t len) +hawk_ooi_t StdHawk::SourceString::read (Data& io, hawk_ooch_t* buf, hawk_oow_t len) { if (io.isMaster()) { @@ -1356,7 +1356,7 @@ StdHawk::ssize_t StdHawk::SourceString::read (Data& io, char_t* buf, size_t len) } } -StdHawk::ssize_t StdHawk::SourceString::write (Data& io, const char_t* buf, size_t len) +hawk_ooi_t StdHawk::SourceString::write (Data& io, const hawk_ooch_t* buf, hawk_oow_t len) { if (io.isMaster()) { diff --git a/hawk/lib/StdHawk.hpp b/hawk/lib/StdHawk.hpp index 63e1f48a..d027d51c 100644 --- a/hawk/lib/StdHawk.hpp +++ b/hawk/lib/StdHawk.hpp @@ -51,7 +51,7 @@ public: class HAWK_EXPORT SourceFile: public Source { public: - SourceFile (const char_t* name, hawk_cmgr_t* cmgr = HAWK_NULL): + SourceFile (const hawk_ooch_t* name, hawk_cmgr_t* cmgr = HAWK_NULL): name (name), cmgr (cmgr) { dir.ptr = HAWK_NULL; dir.len = 0; @@ -59,11 +59,11 @@ public: int open (Data& io); int close (Data& io); - ssize_t read (Data& io, char_t* buf, size_t len); - ssize_t write (Data& io, const char_t* buf, size_t len); + hawk_ooi_t read (Data& io, hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t write (Data& io, const hawk_ooch_t* buf, hawk_oow_t len); protected: - const char_t* name; + const hawk_ooch_t* name; hawk_oocs_t dir; hawk_cmgr_t* cmgr; }; @@ -75,16 +75,16 @@ public: class HAWK_EXPORT SourceString: public Source { public: - SourceString (const char_t* str): str (str) {} + SourceString (const hawk_ooch_t* str): str (str) {} int open (Data& io); int close (Data& io); - ssize_t read (Data& io, char_t* buf, size_t len); - ssize_t write (Data& io, const char_t* buf, size_t len); + hawk_ooi_t read (Data& io, hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t write (Data& io, const hawk_ooch_t* buf, hawk_oow_t len); protected: - const char_t* str; - const char_t* ptr; + const hawk_ooch_t* str; + const hawk_ooch_t* ptr; }; StdHawk (Mmgr* mmgr = HAWK_NULL): Hawk(mmgr), stdmod_up(false), console_cmgr(HAWK_NULL) @@ -110,8 +110,8 @@ public: /// The addConsoleOutput() function adds a file to form an /// output console stream. - int addConsoleOutput (const char_t* arg, size_t len); - int addConsoleOutput (const char_t* arg); + int addConsoleOutput (const hawk_ooch_t* arg, hawk_oow_t len); + int addConsoleOutput (const hawk_ooch_t* arg); void clearConsoleOutputs (); @@ -122,39 +122,39 @@ protected: int __build_environ (Run* run, void* envptr); // intrinsic functions - hawk_cmgr_t* getiocmgr (const char_t* ioname); + hawk_cmgr_t* getiocmgr (const hawk_ooch_t* ioname); - int setioattr (Run& run, Value& ret, Value* args, size_t nargs, const char_t* name, size_t len); - int getioattr (Run& run, Value& ret, Value* args, size_t nargs, const char_t* name, size_t len); + int setioattr (Run& run, Value& ret, Value* args, hawk_oow_t nargs, const hawk_ooch_t* name, hawk_oow_t len); + int getioattr (Run& run, Value& ret, Value* args, hawk_oow_t nargs, const hawk_ooch_t* name, hawk_oow_t len); // pipe io handlers int openPipe (Pipe& io); int closePipe (Pipe& io); - ssize_t readPipe (Pipe& io, char_t* buf, size_t len); - ssize_t writePipe (Pipe& io, const char_t* buf, size_t len); - ssize_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, size_t len); + hawk_ooi_t readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len); int flushPipe (Pipe& io); // file io handlers int openFile (File& io); int closeFile (File& io); - ssize_t readFile (File& io, char_t* buf, size_t len); - ssize_t writeFile (File& io, const char_t* buf, size_t len); - ssize_t writeFileBytes (File& io, const hawk_bch_t* buf, size_t len); + hawk_ooi_t readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len); int flushFile (File& io); // console io handlers int openConsole (Console& io); int closeConsole (Console& io); - ssize_t readConsole (Console& io, char_t* buf, size_t len); - ssize_t writeConsole (Console& io, const char_t* buf, size_t len); - ssize_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, size_t len); + hawk_ooi_t readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len); + hawk_ooi_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len); int flushConsole (Console& io); int nextConsole (Console& io); // primitive handlers - void* allocMem (size_t n); - void* reallocMem (void* ptr, size_t n); + void* allocMem (hawk_oow_t n); + void* reallocMem (void* ptr, hawk_oow_t n); void freeMem (void* ptr); flt_t pow (flt_t x, flt_t y); @@ -162,7 +162,7 @@ protected: void* modopen (const mod_spec_t* spec); void modclose (void* handle); - void* modsym (void* handle, const char_t* name); + void* modsym (void* handle, const hawk_ooch_t* name); protected: hawk_htb_t cmgrtab; @@ -177,25 +177,25 @@ protected: int gbl_environ; // standard input console - reuse runarg - size_t runarg_index; - size_t runarg_count; + hawk_oow_t runarg_index; + hawk_oow_t runarg_count; // standard output console xstrs_t ofile; - size_t ofile_index; - size_t ofile_count; + hawk_oow_t ofile_index; + hawk_oow_t ofile_count; public: struct ioattr_t { hawk_cmgr_t* cmgr; - char_t cmgr_name[64]; // i assume that the cmgr name never exceeds this length. + hawk_ooch_t cmgr_name[64]; // i assume that the cmgr name never exceeds this length. hawk_ntime_t tmout[4]; ioattr_t (): cmgr (HAWK_NULL) { this->cmgr_name[0] = HAWK_T('\0'); - for (size_t i = 0; i < HAWK_COUNTOF(this->tmout); i++) + for (hawk_oow_t i = 0; i < HAWK_COUNTOF(this->tmout); i++) { this->tmout[i].sec = -999; this->tmout[i].nsec = 0; @@ -206,8 +206,8 @@ public: static ioattr_t default_ioattr; protected: - ioattr_t* get_ioattr (const char_t* ptr, size_t len); - ioattr_t* find_or_make_ioattr (const char_t* ptr, size_t len); + ioattr_t* get_ioattr (const hawk_ooch_t* ptr, hawk_oow_t len); + ioattr_t* find_or_make_ioattr (const hawk_ooch_t* ptr, hawk_oow_t len); private: