some more naming changes
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
3953a8e404
commit
d9e658dc4b
@ -159,45 +159,45 @@
|
|||||||
/* ========================================================================= */
|
/* ========================================================================= */
|
||||||
enum hcl_tok_type_t
|
enum hcl_tok_type_t
|
||||||
{
|
{
|
||||||
HCL_IOTOK_EOF,
|
HCL_TOK_EOF,
|
||||||
HCL_IOTOK_CHARLIT,
|
HCL_TOK_CHARLIT,
|
||||||
HCL_IOTOK_STRLIT,
|
HCL_TOK_STRLIT,
|
||||||
HCL_IOTOK_NUMLIT,
|
HCL_TOK_NUMLIT,
|
||||||
HCL_IOTOK_RADNUMLIT,
|
HCL_TOK_RADNUMLIT,
|
||||||
HCL_IOTOK_FPDECLIT,
|
HCL_TOK_FPDECLIT,
|
||||||
HCL_IOTOK_SMPTRLIT,
|
HCL_TOK_SMPTRLIT,
|
||||||
HCL_IOTOK_ERRLIT,
|
HCL_TOK_ERRLIT,
|
||||||
HCL_IOTOK_NIL,
|
HCL_TOK_NIL,
|
||||||
HCL_IOTOK_TRUE,
|
HCL_TOK_TRUE,
|
||||||
HCL_IOTOK_FALSE,
|
HCL_TOK_FALSE,
|
||||||
HCL_IOTOK_SELF,
|
HCL_TOK_SELF,
|
||||||
HCL_IOTOK_SUPER,
|
HCL_TOK_SUPER,
|
||||||
|
|
||||||
HCL_IOTOK_IDENT,
|
HCL_TOK_IDENT,
|
||||||
HCL_IOTOK_IDENT_DOTTED,
|
HCL_TOK_IDENT_DOTTED,
|
||||||
HCL_IOTOK_DOT, /* . */
|
HCL_TOK_DOT, /* . */
|
||||||
HCL_IOTOK_DBLDOTS, /* .. */
|
HCL_TOK_DBLDOTS, /* .. */
|
||||||
HCL_IOTOK_ELLIPSIS, /* ... */
|
HCL_TOK_ELLIPSIS, /* ... */
|
||||||
HCL_IOTOK_COLON, /* : */
|
HCL_TOK_COLON, /* : */
|
||||||
HCL_IOTOK_DBLCOLONS, /* :: */
|
HCL_TOK_DBLCOLONS, /* :: */
|
||||||
HCL_IOTOK_TRPCOLONS, /* ::: */
|
HCL_TOK_TRPCOLONS, /* ::: */
|
||||||
HCL_IOTOK_DCSTAR, /* ::* */
|
HCL_TOK_DCSTAR, /* ::* */
|
||||||
HCL_IOTOK_COMMA, /* , */
|
HCL_TOK_COMMA, /* , */
|
||||||
HCL_IOTOK_LPAREN, /* ( */
|
HCL_TOK_LPAREN, /* ( */
|
||||||
HCL_IOTOK_RPAREN, /* ) */
|
HCL_TOK_RPAREN, /* ) */
|
||||||
HCL_IOTOK_LPARCOLON, /* (: */
|
HCL_TOK_LPARCOLON, /* (: */
|
||||||
HCL_IOTOK_BAPAREN, /* #[ - byte array parenthesis */
|
HCL_TOK_BAPAREN, /* #[ - byte array parenthesis */
|
||||||
HCL_IOTOK_QLPAREN, /* #( - quoted-list parenthesis */
|
HCL_TOK_QLPAREN, /* #( - quoted-list parenthesis */
|
||||||
HCL_IOTOK_DLPAREN, /* #{ - dictionary parenthese */
|
HCL_TOK_DLPAREN, /* #{ - dictionary parenthese */
|
||||||
HCL_IOTOK_LBRACK, /* [ - array */
|
HCL_TOK_LBRACK, /* [ - array */
|
||||||
HCL_IOTOK_RBRACK, /* ] */
|
HCL_TOK_RBRACK, /* ] */
|
||||||
HCL_IOTOK_LBRACE, /* { - block */
|
HCL_TOK_LBRACE, /* { - block */
|
||||||
HCL_IOTOK_RBRACE, /* } */
|
HCL_TOK_RBRACE, /* } */
|
||||||
HCL_IOTOK_VBAR, /* | */
|
HCL_TOK_VBAR, /* | */
|
||||||
HCL_IOTOK_EOL, /* end of line */
|
HCL_TOK_EOL, /* end of line */
|
||||||
|
|
||||||
HCL_IOTOK_INCLUDE,
|
HCL_TOK_INCLUDE,
|
||||||
HCL_IOTOK_PRAGMA
|
HCL_TOK_PRAGMA
|
||||||
};
|
};
|
||||||
typedef enum hcl_tok_type_t hcl_tok_type_t;
|
typedef enum hcl_tok_type_t hcl_tok_type_t;
|
||||||
|
|
||||||
|
173
lib/read.c
173
lib/read.c
@ -428,12 +428,12 @@ static int get_directive_token_type (hcl_t* hcl, hcl_tok_type_t* tok_type)
|
|||||||
{
|
{
|
||||||
if (does_token_name_match(hcl, VOCA_INCLUDE))
|
if (does_token_name_match(hcl, VOCA_INCLUDE))
|
||||||
{
|
{
|
||||||
*tok_type = HCL_IOTOK_INCLUDE;
|
*tok_type = HCL_TOK_INCLUDE;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else if (does_token_name_match(hcl, VOCA_PRAGMA))
|
else if (does_token_name_match(hcl, VOCA_PRAGMA))
|
||||||
{
|
{
|
||||||
*tok_type = HCL_IOTOK_PRAGMA;
|
*tok_type = HCL_TOK_PRAGMA;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -523,11 +523,11 @@ static hcl_tok_type_t classify_ident_token (hcl_t* hcl, const hcl_oocs_t* v)
|
|||||||
hcl_tok_type_t type;
|
hcl_tok_type_t type;
|
||||||
} tab[] =
|
} tab[] =
|
||||||
{
|
{
|
||||||
{ 4, { 'n','u','l','l' }, HCL_IOTOK_NIL },
|
{ 4, { 'n','u','l','l' }, HCL_TOK_NIL },
|
||||||
{ 4, { 't','r','u','e' }, HCL_IOTOK_TRUE },
|
{ 4, { 't','r','u','e' }, HCL_TOK_TRUE },
|
||||||
{ 5, { 'f','a','l','s','e' }, HCL_IOTOK_FALSE },
|
{ 5, { 'f','a','l','s','e' }, HCL_TOK_FALSE },
|
||||||
{ 4, { 's','e','l','f' }, HCL_IOTOK_SELF },
|
{ 4, { 's','e','l','f' }, HCL_TOK_SELF },
|
||||||
{ 5, { 's','u','p','e','r' }, HCL_IOTOK_SUPER }
|
{ 5, { 's','u','p','e','r' }, HCL_TOK_SUPER }
|
||||||
};
|
};
|
||||||
|
|
||||||
for (i = 0; i < HCL_COUNTOF(tab); i++)
|
for (i = 0; i < HCL_COUNTOF(tab); i++)
|
||||||
@ -535,7 +535,7 @@ static hcl_tok_type_t classify_ident_token (hcl_t* hcl, const hcl_oocs_t* v)
|
|||||||
if (hcl_comp_oochars(v->ptr, v->len, tab[i].name, tab[i].len) == 0) return tab[i].type;
|
if (hcl_comp_oochars(v->ptr, v->len, tab[i].name, tab[i].len) == 0) return tab[i].type;
|
||||||
}
|
}
|
||||||
|
|
||||||
return HCL_IOTOK_IDENT;
|
return HCL_TOK_IDENT;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int is_sr_name_in_use (hcl_t* hcl, const hcl_ooch_t* sr_name)
|
static int is_sr_name_in_use (hcl_t* hcl, const hcl_ooch_t* sr_name)
|
||||||
@ -999,7 +999,7 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
/* the #include directive is an exception to the general expression rule.
|
/* the #include directive is an exception to the general expression rule.
|
||||||
* use this exceptional code block to divert the major token processing */
|
* use this exceptional code block to divert the major token processing */
|
||||||
|
|
||||||
if (TOKEN_TYPE(hcl) != HCL_IOTOK_STRLIT)
|
if (TOKEN_TYPE(hcl) != HCL_TOK_STRLIT)
|
||||||
{
|
{
|
||||||
hcl_setsynerr (hcl, HCL_SYNERR_STRING, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
hcl_setsynerr (hcl, HCL_SYNERR_STRING, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
goto oops;
|
goto oops;
|
||||||
@ -1015,7 +1015,7 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
goto ok;
|
goto ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (frd->expect_vlist_item && TOKEN_TYPE(hcl) != HCL_IOTOK_IDENT && TOKEN_TYPE(hcl) != HCL_IOTOK_VBAR)
|
if (frd->expect_vlist_item && TOKEN_TYPE(hcl) != HCL_TOK_IDENT && TOKEN_TYPE(hcl) != HCL_TOK_VBAR)
|
||||||
{
|
{
|
||||||
/* vlist also has special requirement that it can only contain variable names. */
|
/* vlist also has special requirement that it can only contain variable names. */
|
||||||
hcl_setsynerr (hcl, HCL_SYNERR_VARNAME, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
hcl_setsynerr (hcl, HCL_SYNERR_VARNAME, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
@ -1028,17 +1028,17 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
hcl_setsynerr (hcl, HCL_SYNERR_ILTOK, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
hcl_setsynerr (hcl, HCL_SYNERR_ILTOK, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
goto oops;
|
goto oops;
|
||||||
|
|
||||||
case HCL_IOTOK_EOF:
|
case HCL_TOK_EOF:
|
||||||
hcl_setsynerr (hcl, HCL_SYNERR_EOF, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
hcl_setsynerr (hcl, HCL_SYNERR_EOF, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
goto oops;
|
goto oops;
|
||||||
|
|
||||||
case HCL_IOTOK_INCLUDE:
|
case HCL_TOK_INCLUDE:
|
||||||
/* TODO: should i limit where #include can be specified?
|
/* TODO: should i limit where #include can be specified?
|
||||||
* disallow it inside a list literal or an array literal? */
|
* disallow it inside a list literal or an array literal? */
|
||||||
frd->expect_include_file = 1;
|
frd->expect_include_file = 1;
|
||||||
goto ok;
|
goto ok;
|
||||||
|
|
||||||
case HCL_IOTOK_VBAR:
|
case HCL_TOK_VBAR:
|
||||||
if (frd->expect_vlist_item)
|
if (frd->expect_vlist_item)
|
||||||
{
|
{
|
||||||
/* closer */
|
/* closer */
|
||||||
@ -1072,32 +1072,32 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
goto start_list;
|
goto start_list;
|
||||||
}
|
}
|
||||||
|
|
||||||
case HCL_IOTOK_LBRACK: /* [ */
|
case HCL_TOK_LBRACK: /* [ */
|
||||||
frd->flagv = DATA_LIST;
|
frd->flagv = DATA_LIST;
|
||||||
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_ARRAY);
|
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_ARRAY);
|
||||||
goto start_list;
|
goto start_list;
|
||||||
|
|
||||||
case HCL_IOTOK_BAPAREN: /* #[ */
|
case HCL_TOK_BAPAREN: /* #[ */
|
||||||
frd->flagv = DATA_LIST;
|
frd->flagv = DATA_LIST;
|
||||||
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_BYTEARRAY);
|
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_BYTEARRAY);
|
||||||
goto start_list;
|
goto start_list;
|
||||||
|
|
||||||
case HCL_IOTOK_DLPAREN: /* #{ */
|
case HCL_TOK_DLPAREN: /* #{ */
|
||||||
frd->flagv = DATA_LIST;
|
frd->flagv = DATA_LIST;
|
||||||
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_DIC);
|
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_DIC);
|
||||||
goto start_list;
|
goto start_list;
|
||||||
|
|
||||||
case HCL_IOTOK_QLPAREN: /* #( */
|
case HCL_TOK_QLPAREN: /* #( */
|
||||||
frd->flagv = DATA_LIST;
|
frd->flagv = DATA_LIST;
|
||||||
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_QLIST);
|
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_QLIST);
|
||||||
goto start_list;
|
goto start_list;
|
||||||
|
|
||||||
case HCL_IOTOK_LPARCOLON: /* (: */
|
case HCL_TOK_LPARCOLON: /* (: */
|
||||||
frd->flagv = 0;
|
frd->flagv = 0;
|
||||||
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_MLIST);
|
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_MLIST);
|
||||||
goto start_list;
|
goto start_list;
|
||||||
|
|
||||||
case HCL_IOTOK_LPAREN: /* ( */
|
case HCL_TOK_LPAREN: /* ( */
|
||||||
frd->flagv = 0;
|
frd->flagv = 0;
|
||||||
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_XLIST);
|
LIST_FLAG_SET_CONCODE (frd->flagv, HCL_CONCODE_XLIST);
|
||||||
start_list:
|
start_list:
|
||||||
@ -1116,7 +1116,7 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
/* read the next token */
|
/* read the next token */
|
||||||
goto ok;
|
goto ok;
|
||||||
|
|
||||||
case HCL_IOTOK_DOT:
|
case HCL_TOK_DOT:
|
||||||
if (frd->level <= 0 || !can_dot_list(hcl))
|
if (frd->level <= 0 || !can_dot_list(hcl))
|
||||||
{
|
{
|
||||||
/* cannot have a period:
|
/* cannot have a period:
|
||||||
@ -1129,7 +1129,7 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
|
|
||||||
goto ok;
|
goto ok;
|
||||||
|
|
||||||
case HCL_IOTOK_COLON:
|
case HCL_TOK_COLON:
|
||||||
if (frd->level <= 0 || !can_colon_list(hcl))
|
if (frd->level <= 0 || !can_colon_list(hcl))
|
||||||
{
|
{
|
||||||
hcl_setsynerr (hcl, HCL_SYNERR_COLONBANNED, TOKEN_LOC(hcl), HCL_NULL);
|
hcl_setsynerr (hcl, HCL_SYNERR_COLONBANNED, TOKEN_LOC(hcl), HCL_NULL);
|
||||||
@ -1138,7 +1138,7 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
|
|
||||||
goto ok;
|
goto ok;
|
||||||
|
|
||||||
case HCL_IOTOK_COMMA:
|
case HCL_TOK_COMMA:
|
||||||
if (frd->level <= 0 || !can_comma_list(hcl))
|
if (frd->level <= 0 || !can_comma_list(hcl))
|
||||||
{
|
{
|
||||||
hcl_setsynerr (hcl, HCL_SYNERR_COMMABANNED, TOKEN_LOC(hcl), HCL_NULL);
|
hcl_setsynerr (hcl, HCL_SYNERR_COMMABANNED, TOKEN_LOC(hcl), HCL_NULL);
|
||||||
@ -1147,9 +1147,9 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
|
|
||||||
goto ok;
|
goto ok;
|
||||||
|
|
||||||
case HCL_IOTOK_RPAREN: /* xlist (), qlist #() */
|
case HCL_TOK_RPAREN: /* xlist (), qlist #() */
|
||||||
case HCL_IOTOK_RBRACK: /* bytearray #[], array[] */
|
case HCL_TOK_RBRACK: /* bytearray #[], array[] */
|
||||||
case HCL_IOTOK_RBRACE: /* dictionary #{} */
|
case HCL_TOK_RBRACE: /* dictionary #{} */
|
||||||
{
|
{
|
||||||
static struct
|
static struct
|
||||||
{
|
{
|
||||||
@ -1157,12 +1157,12 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
hcl_synerrnum_t synerr;
|
hcl_synerrnum_t synerr;
|
||||||
} req[] =
|
} req[] =
|
||||||
{
|
{
|
||||||
{ HCL_IOTOK_RPAREN, HCL_SYNERR_RPAREN }, /* XLIST ( ) */
|
{ HCL_TOK_RPAREN, HCL_SYNERR_RPAREN }, /* XLIST ( ) */
|
||||||
{ HCL_IOTOK_RPAREN, HCL_SYNERR_RPAREN }, /* MLIST (: ) */
|
{ HCL_TOK_RPAREN, HCL_SYNERR_RPAREN }, /* MLIST (: ) */
|
||||||
{ HCL_IOTOK_RBRACK, HCL_SYNERR_RBRACK }, /* ARRAY [ ] */
|
{ HCL_TOK_RBRACK, HCL_SYNERR_RBRACK }, /* ARRAY [ ] */
|
||||||
{ HCL_IOTOK_RBRACK, HCL_SYNERR_RBRACK }, /* BYTEARRAY #[ ] */
|
{ HCL_TOK_RBRACK, HCL_SYNERR_RBRACK }, /* BYTEARRAY #[ ] */
|
||||||
{ HCL_IOTOK_RBRACE, HCL_SYNERR_RBRACE }, /* DIC #{ } */
|
{ HCL_TOK_RBRACE, HCL_SYNERR_RBRACE }, /* DIC #{ } */
|
||||||
{ HCL_IOTOK_RPAREN, HCL_SYNERR_RPAREN } /* QLIST #( ) */
|
{ HCL_TOK_RPAREN, HCL_SYNERR_RPAREN } /* QLIST #( ) */
|
||||||
};
|
};
|
||||||
|
|
||||||
int oldflagv;
|
int oldflagv;
|
||||||
@ -1211,39 +1211,39 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case HCL_IOTOK_NIL:
|
case HCL_TOK_NIL:
|
||||||
frd->obj = hcl_makecnodenil(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodenil(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_TRUE:
|
case HCL_TOK_TRUE:
|
||||||
frd->obj = hcl_makecnodetrue(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodetrue(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_FALSE:
|
case HCL_TOK_FALSE:
|
||||||
frd->obj = hcl_makecnodefalse(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodefalse(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_SELF:
|
case HCL_TOK_SELF:
|
||||||
frd->obj = hcl_makecnodeself(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodeself(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_SUPER:
|
case HCL_TOK_SUPER:
|
||||||
frd->obj = hcl_makecnodesuper(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodesuper(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_ELLIPSIS:
|
case HCL_TOK_ELLIPSIS:
|
||||||
frd->obj = hcl_makecnodeellipsis(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodeellipsis(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_TRPCOLONS:
|
case HCL_TOK_TRPCOLONS:
|
||||||
frd->obj = hcl_makecnodetrpcolons(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodetrpcolons(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_DCSTAR:
|
case HCL_TOK_DCSTAR:
|
||||||
frd->obj = hcl_makecnodedcstar(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodedcstar(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_SMPTRLIT:
|
case HCL_TOK_SMPTRLIT:
|
||||||
{
|
{
|
||||||
hcl_oow_t i;
|
hcl_oow_t i;
|
||||||
hcl_oow_t v = 0;
|
hcl_oow_t v = 0;
|
||||||
@ -1265,7 +1265,7 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case HCL_IOTOK_ERRLIT:
|
case HCL_TOK_ERRLIT:
|
||||||
{
|
{
|
||||||
hcl_oow_t i;
|
hcl_oow_t i;
|
||||||
hcl_ooi_t v = 0;
|
hcl_ooi_t v = 0;
|
||||||
@ -1287,37 +1287,37 @@ static int feed_process_token (hcl_t* hcl)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case HCL_IOTOK_CHARLIT:
|
case HCL_TOK_CHARLIT:
|
||||||
frd->obj = hcl_makecnodecharlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl), TOKEN_NAME_CHAR(hcl, 0));
|
frd->obj = hcl_makecnodecharlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl), TOKEN_NAME_CHAR(hcl, 0));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_NUMLIT:
|
case HCL_TOK_NUMLIT:
|
||||||
frd->obj = hcl_makecnodenumlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodenumlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_RADNUMLIT:
|
case HCL_TOK_RADNUMLIT:
|
||||||
frd->obj = hcl_makecnoderadnumlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnoderadnumlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_FPDECLIT:
|
case HCL_TOK_FPDECLIT:
|
||||||
frd->obj = hcl_makecnodefpdeclit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodefpdeclit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
case HCL_IOTOK_REAL:
|
case HCL_TOK_REAL:
|
||||||
frd->obj = hcl_makerealnum(hcl, HCL_IOTOK_RVAL(hcl));
|
frd->obj = hcl_makerealnum(hcl, HCL_TOK_RVAL(hcl));
|
||||||
break;
|
break;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
case HCL_IOTOK_STRLIT:
|
case HCL_TOK_STRLIT:
|
||||||
frd->obj = hcl_makecnodestrlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodestrlit(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_IDENT:
|
case HCL_TOK_IDENT:
|
||||||
frd->obj = hcl_makecnodesymbol(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodesymbol(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case HCL_IOTOK_IDENT_DOTTED:
|
case HCL_TOK_IDENT_DOTTED:
|
||||||
frd->obj = hcl_makecnodedsymbol(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
frd->obj = hcl_makecnodedsymbol(hcl, TOKEN_LOC(hcl), TOKEN_NAME(hcl));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -1416,27 +1416,27 @@ static delim_token_t delim_token_tab[] =
|
|||||||
* however, # is included in is_delimchar().
|
* however, # is included in is_delimchar().
|
||||||
*/
|
*/
|
||||||
|
|
||||||
{ "(", 1, HCL_IOTOK_LPAREN },
|
{ "(", 1, HCL_TOK_LPAREN },
|
||||||
{ "(:", 2, HCL_IOTOK_LPARCOLON },
|
{ "(:", 2, HCL_TOK_LPARCOLON },
|
||||||
{ ")", 1, HCL_IOTOK_RPAREN },
|
{ ")", 1, HCL_TOK_RPAREN },
|
||||||
|
|
||||||
{ "[", 1, HCL_IOTOK_LBRACK },
|
{ "[", 1, HCL_TOK_LBRACK },
|
||||||
{ "]", 1, HCL_IOTOK_RBRACK },
|
{ "]", 1, HCL_TOK_RBRACK },
|
||||||
|
|
||||||
{ "{", 1, HCL_IOTOK_LBRACE },
|
{ "{", 1, HCL_TOK_LBRACE },
|
||||||
{ "}", 1, HCL_IOTOK_RBRACE },
|
{ "}", 1, HCL_TOK_RBRACE },
|
||||||
|
|
||||||
{ "|", 1, HCL_IOTOK_VBAR },
|
{ "|", 1, HCL_TOK_VBAR },
|
||||||
{ ",", 1, HCL_IOTOK_COMMA },
|
{ ",", 1, HCL_TOK_COMMA },
|
||||||
|
|
||||||
{ ".", 1, HCL_IOTOK_DOT },
|
{ ".", 1, HCL_TOK_DOT },
|
||||||
{ "..", 2, HCL_IOTOK_DBLDOTS },
|
{ "..", 2, HCL_TOK_DBLDOTS },
|
||||||
{ "...", 3, HCL_IOTOK_ELLIPSIS },
|
{ "...", 3, HCL_TOK_ELLIPSIS },
|
||||||
|
|
||||||
{ ":", 1, HCL_IOTOK_COLON },
|
{ ":", 1, HCL_TOK_COLON },
|
||||||
{ "::", 2, HCL_IOTOK_DBLCOLONS },
|
{ "::", 2, HCL_TOK_DBLCOLONS },
|
||||||
{ "::*", 3, HCL_IOTOK_DCSTAR },
|
{ "::*", 3, HCL_TOK_DCSTAR },
|
||||||
{ ":::", 3, HCL_IOTOK_TRPCOLONS }
|
{ ":::", 3, HCL_TOK_TRPCOLONS }
|
||||||
};
|
};
|
||||||
|
|
||||||
static int find_delim_token_char (hcl_t* hcl, const hcl_ooci_t c, int row_start, int row_end, int col, hcl_flx_dt_t* dt)
|
static int find_delim_token_char (hcl_t* hcl, const hcl_ooci_t c, int row_start, int row_end, int col, hcl_flx_dt_t* dt)
|
||||||
@ -1564,7 +1564,7 @@ static HCL_INLINE void init_flx_st (hcl_flx_st_t* st, hcl_ooch_t sign_c)
|
|||||||
static void reset_flx_token (hcl_t* hcl)
|
static void reset_flx_token (hcl_t* hcl)
|
||||||
{
|
{
|
||||||
/* clear the token name, reset its location */
|
/* clear the token name, reset its location */
|
||||||
SET_TOKEN_TYPE (hcl, HCL_IOTOK_EOF); /* is it correct? */
|
SET_TOKEN_TYPE (hcl, HCL_TOK_EOF); /* is it correct? */
|
||||||
CLEAR_TOKEN_NAME (hcl);
|
CLEAR_TOKEN_NAME (hcl);
|
||||||
SET_TOKEN_LOC (hcl, &hcl->c->feed.lx.loc);
|
SET_TOKEN_LOC (hcl, &hcl->c->feed.lx.loc);
|
||||||
}
|
}
|
||||||
@ -1598,7 +1598,7 @@ static int flx_start (hcl_t* hcl, hcl_ooci_t c)
|
|||||||
case HCL_OOCI_EOF:
|
case HCL_OOCI_EOF:
|
||||||
/* only EOF of the top-level stream is supposed to be fed in.
|
/* only EOF of the top-level stream is supposed to be fed in.
|
||||||
* the internal logic discard EOFs of included streams */
|
* the internal logic discard EOFs of included streams */
|
||||||
FEED_WRAP_UP_WITH_CHARS (hcl, vocas[VOCA_EOF].str, vocas[VOCA_EOF].len, HCL_IOTOK_EOF);
|
FEED_WRAP_UP_WITH_CHARS (hcl, vocas[VOCA_EOF].str, vocas[VOCA_EOF].len, HCL_TOK_EOF);
|
||||||
goto consumed;
|
goto consumed;
|
||||||
|
|
||||||
case ';':
|
case ';':
|
||||||
@ -1611,12 +1611,12 @@ static int flx_start (hcl_t* hcl, hcl_ooci_t c)
|
|||||||
goto consumed;
|
goto consumed;
|
||||||
|
|
||||||
case '\"':
|
case '\"':
|
||||||
init_flx_qt (FLX_QT(hcl), HCL_IOTOK_STRLIT, HCL_SYNERR_STRLIT, c, '\\', 0, HCL_TYPE_MAX(hcl_oow_t));
|
init_flx_qt (FLX_QT(hcl), HCL_TOK_STRLIT, HCL_SYNERR_STRLIT, c, '\\', 0, HCL_TYPE_MAX(hcl_oow_t));
|
||||||
FEED_CONTINUE (hcl, HCL_FLX_QUOTED_TOKEN); /* discard the quote itself. move on the the QUOTED_TOKEN state */
|
FEED_CONTINUE (hcl, HCL_FLX_QUOTED_TOKEN); /* discard the quote itself. move on the the QUOTED_TOKEN state */
|
||||||
goto consumed;
|
goto consumed;
|
||||||
|
|
||||||
case '\'':
|
case '\'':
|
||||||
init_flx_qt (FLX_QT(hcl), HCL_IOTOK_CHARLIT, HCL_SYNERR_CHARLIT, c, '\\', 1, 1);
|
init_flx_qt (FLX_QT(hcl), HCL_TOK_CHARLIT, HCL_SYNERR_CHARLIT, c, '\\', 1, 1);
|
||||||
FEED_CONTINUE (hcl, HCL_FLX_QUOTED_TOKEN); /* discard the quote itself. move on the the QUOTED_TOKEN state */
|
FEED_CONTINUE (hcl, HCL_FLX_QUOTED_TOKEN); /* discard the quote itself. move on the the QUOTED_TOKEN state */
|
||||||
goto consumed;
|
goto consumed;
|
||||||
|
|
||||||
@ -1722,23 +1722,23 @@ static int flx_hmarked_token (hcl_t* hcl, hcl_ooci_t c)
|
|||||||
/* --------------------------- */
|
/* --------------------------- */
|
||||||
|
|
||||||
case 'x':
|
case 'x':
|
||||||
init_flx_hn (FLX_HN(hcl), HCL_IOTOK_RADNUMLIT, HCL_SYNERR_NUMLIT, 16);
|
init_flx_hn (FLX_HN(hcl), HCL_TOK_RADNUMLIT, HCL_SYNERR_NUMLIT, 16);
|
||||||
goto radixed_number;
|
goto radixed_number;
|
||||||
|
|
||||||
case 'o':
|
case 'o':
|
||||||
init_flx_hn (FLX_HN(hcl), HCL_IOTOK_RADNUMLIT, HCL_SYNERR_NUMLIT, 8);
|
init_flx_hn (FLX_HN(hcl), HCL_TOK_RADNUMLIT, HCL_SYNERR_NUMLIT, 8);
|
||||||
goto radixed_number;
|
goto radixed_number;
|
||||||
|
|
||||||
case 'b':
|
case 'b':
|
||||||
init_flx_hn (FLX_HN(hcl), HCL_IOTOK_RADNUMLIT, HCL_SYNERR_NUMLIT, 2);
|
init_flx_hn (FLX_HN(hcl), HCL_TOK_RADNUMLIT, HCL_SYNERR_NUMLIT, 2);
|
||||||
goto radixed_number;
|
goto radixed_number;
|
||||||
|
|
||||||
case 'e':
|
case 'e':
|
||||||
init_flx_hn (FLX_HN(hcl), HCL_IOTOK_ERRLIT, HCL_SYNERR_ERRLIT, 10);
|
init_flx_hn (FLX_HN(hcl), HCL_TOK_ERRLIT, HCL_SYNERR_ERRLIT, 10);
|
||||||
goto radixed_number;
|
goto radixed_number;
|
||||||
|
|
||||||
case 'p':
|
case 'p':
|
||||||
init_flx_hn (FLX_HN(hcl), HCL_IOTOK_SMPTRLIT, HCL_SYNERR_SMPTRLIT, 16);
|
init_flx_hn (FLX_HN(hcl), HCL_TOK_SMPTRLIT, HCL_SYNERR_SMPTRLIT, 16);
|
||||||
radixed_number:
|
radixed_number:
|
||||||
FEED_CONTINUE_WITH_CHAR (hcl, c, HCL_FLX_HMARKED_NUMBER);
|
FEED_CONTINUE_WITH_CHAR (hcl, c, HCL_FLX_HMARKED_NUMBER);
|
||||||
goto consumed;
|
goto consumed;
|
||||||
@ -1750,15 +1750,15 @@ static int flx_hmarked_token (hcl_t* hcl, hcl_ooci_t c)
|
|||||||
|
|
||||||
/* --------------------------- */
|
/* --------------------------- */
|
||||||
case '[':
|
case '[':
|
||||||
FEED_WRAP_UP_WITH_CHAR (hcl, c, HCL_IOTOK_BAPAREN);
|
FEED_WRAP_UP_WITH_CHAR (hcl, c, HCL_TOK_BAPAREN);
|
||||||
goto consumed;
|
goto consumed;
|
||||||
|
|
||||||
case '(':
|
case '(':
|
||||||
FEED_WRAP_UP_WITH_CHAR (hcl, c, HCL_IOTOK_QLPAREN);
|
FEED_WRAP_UP_WITH_CHAR (hcl, c, HCL_TOK_QLPAREN);
|
||||||
goto consumed;
|
goto consumed;
|
||||||
|
|
||||||
case '{':
|
case '{':
|
||||||
FEED_WRAP_UP_WITH_CHAR (hcl, c, HCL_IOTOK_DLPAREN);
|
FEED_WRAP_UP_WITH_CHAR (hcl, c, HCL_TOK_DLPAREN);
|
||||||
goto consumed;
|
goto consumed;
|
||||||
|
|
||||||
/* --------------------------- */
|
/* --------------------------- */
|
||||||
@ -1857,7 +1857,7 @@ static int flx_hmarked_char (hcl_t* hcl, hcl_ooci_t c)
|
|||||||
/* reset the token name to the converted character */
|
/* reset the token name to the converted character */
|
||||||
CLEAR_TOKEN_NAME (hcl);
|
CLEAR_TOKEN_NAME (hcl);
|
||||||
ADD_TOKEN_CHAR (hcl, c);
|
ADD_TOKEN_CHAR (hcl, c);
|
||||||
FEED_WRAP_UP (hcl, HCL_IOTOK_CHARLIT);
|
FEED_WRAP_UP (hcl, HCL_TOK_CHARLIT);
|
||||||
goto not_consumed;
|
goto not_consumed;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -1993,7 +1993,7 @@ static int flx_plain_ident (hcl_t* hcl, hcl_ooci_t c) /* identifier */
|
|||||||
seg.ptr = &TOKEN_NAME_CHAR(hcl, start);
|
seg.ptr = &TOKEN_NAME_CHAR(hcl, start);
|
||||||
seg.len = pi->seg_len;
|
seg.len = pi->seg_len;
|
||||||
tok_type = classify_ident_token(hcl, &seg);
|
tok_type = classify_ident_token(hcl, &seg);
|
||||||
if (tok_type != HCL_IOTOK_IDENT)
|
if (tok_type != HCL_TOK_IDENT)
|
||||||
{
|
{
|
||||||
pi->non_ident_seg_count++;
|
pi->non_ident_seg_count++;
|
||||||
pi->last_non_ident_type = tok_type;
|
pi->last_non_ident_type = tok_type;
|
||||||
@ -2025,7 +2025,7 @@ static int flx_plain_ident (hcl_t* hcl, hcl_ooci_t c) /* identifier */
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
FEED_WRAP_UP (hcl, (pi->seg_count == 1? HCL_IOTOK_IDENT: HCL_IOTOK_IDENT_DOTTED));
|
FEED_WRAP_UP (hcl, (pi->seg_count == 1? HCL_TOK_IDENT: HCL_TOK_IDENT_DOTTED));
|
||||||
goto not_consumed;
|
goto not_consumed;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -2073,7 +2073,7 @@ static int flx_plain_number (hcl_t* hcl, hcl_ooci_t c) /* number */
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
FEED_WRAP_UP (hcl, (pn->fpdec? HCL_IOTOK_FPDECLIT: HCL_IOTOK_NUMLIT));
|
FEED_WRAP_UP (hcl, (pn->fpdec? HCL_TOK_FPDECLIT: HCL_TOK_NUMLIT));
|
||||||
goto not_consumed;
|
goto not_consumed;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2167,7 +2167,7 @@ static int flx_quoted_token (hcl_t* hcl, hcl_ooci_t c) /* string, character */
|
|||||||
if (qt->escaped == 0 && c == qt->end_char)
|
if (qt->escaped == 0 && c == qt->end_char)
|
||||||
{
|
{
|
||||||
/* terminating quote */
|
/* terminating quote */
|
||||||
FEED_WRAP_UP (hcl, qt->tok_type); /* HCL_IOTOK_STRLIT or HCL_IOTOK_CHARLIT */
|
FEED_WRAP_UP (hcl, qt->tok_type); /* HCL_TOK_STRLIT or HCL_TOK_CHARLIT */
|
||||||
if (TOKEN_NAME_LEN(hcl) < qt->min_len)
|
if (TOKEN_NAME_LEN(hcl) < qt->min_len)
|
||||||
{
|
{
|
||||||
hcl_setsynerr (hcl, qt->synerr_code, TOKEN_LOC(hcl), HCL_NULL);
|
hcl_setsynerr (hcl, qt->synerr_code, TOKEN_LOC(hcl), HCL_NULL);
|
||||||
@ -2267,7 +2267,7 @@ static int flx_signed_token (hcl_t* hcl, hcl_ooci_t c)
|
|||||||
|
|
||||||
if (c == 'b' || c == 'o' || c == 'x')
|
if (c == 'b' || c == 'o' || c == 'x')
|
||||||
{
|
{
|
||||||
init_flx_hn (FLX_HN(hcl), HCL_IOTOK_RADNUMLIT, HCL_SYNERR_NUMLIT, (c == 'b'? 2: (c == 'o'? 8: 16)));
|
init_flx_hn (FLX_HN(hcl), HCL_TOK_RADNUMLIT, HCL_SYNERR_NUMLIT, (c == 'b'? 2: (c == 'o'? 8: 16)));
|
||||||
FEED_CONTINUE_WITH_CHAR (hcl, c, HCL_FLX_HMARKED_NUMBER);
|
FEED_CONTINUE_WITH_CHAR (hcl, c, HCL_FLX_HMARKED_NUMBER);
|
||||||
goto consumed;
|
goto consumed;
|
||||||
}
|
}
|
||||||
@ -2276,7 +2276,7 @@ static int flx_signed_token (hcl_t* hcl, hcl_ooci_t c)
|
|||||||
/* at this point, the token name buffer holds +# or -# */
|
/* at this point, the token name buffer holds +# or -# */
|
||||||
HCL_ASSERT (hcl, TOKEN_NAME_LEN(hcl) == 2);
|
HCL_ASSERT (hcl, TOKEN_NAME_LEN(hcl) == 2);
|
||||||
TOKEN_NAME_LEN(hcl)--; /* remove the ending # from the name buffer */
|
TOKEN_NAME_LEN(hcl)--; /* remove the ending # from the name buffer */
|
||||||
FEED_WRAP_UP (hcl, HCL_IOTOK_IDENT);
|
FEED_WRAP_UP (hcl, HCL_TOK_IDENT);
|
||||||
|
|
||||||
/* reset the token information as if it enters HMARKED_TOKEN from START */
|
/* reset the token information as if it enters HMARKED_TOKEN from START */
|
||||||
reset_flx_token (hcl);
|
reset_flx_token (hcl);
|
||||||
@ -2941,6 +2941,9 @@ void hcl_flushudio (hcl_t* hcl)
|
|||||||
if (hcl->io.udo_wrtr) hcl->io.udo_wrtr (hcl, HCL_IO_FLUSH, &hcl->io.udo_arg);
|
if (hcl->io.udo_wrtr) hcl->io.udo_wrtr (hcl, HCL_IO_FLUSH, &hcl->io.udo_arg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* TODO: discard the fwollowing three functions - hcl_setbasesrloc, hcl_readbasesrchar, hcl_readbasesrraw */
|
||||||
void hcl_setbasesrloc (hcl_t* hcl, hcl_oow_t line, hcl_oow_t colm)
|
void hcl_setbasesrloc (hcl_t* hcl, hcl_oow_t line, hcl_oow_t colm)
|
||||||
{
|
{
|
||||||
hcl->c->cci_arg.line = line;
|
hcl->c->cci_arg.line = line;
|
||||||
|
47
lib/std.c
47
lib/std.c
@ -3324,7 +3324,16 @@ static HCL_INLINE int read_cci_stream (hcl_t* hcl, hcl_io_cciarg_t* arg)
|
|||||||
int x;
|
int x;
|
||||||
|
|
||||||
bb = (bb_t*)arg->handle;
|
bb = (bb_t*)arg->handle;
|
||||||
HCL_ASSERT (hcl, bb != HCL_NULL && bb->fp != HCL_NULL);
|
HCL_ASSERT (hcl, bb != HCL_NULL);
|
||||||
|
|
||||||
|
if (!bb->fp)
|
||||||
|
{
|
||||||
|
HCL_ASSERT (hcl, arg->includer == HCL_NULL);
|
||||||
|
/* the main stream is opened with no associated file in open_cci_stream(). return no data */
|
||||||
|
arg->xlen = 0;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
x = fgetc(bb->fp);
|
x = fgetc(bb->fp);
|
||||||
@ -3359,7 +3368,7 @@ static HCL_INLINE int read_cci_stream (hcl_t* hcl, hcl_io_cciarg_t* arg)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
remlen = bb->len - bcslen;
|
remlen = bb->len - bcslen;
|
||||||
if (remlen > 0) memmove (bb->buf, &bb->buf[bcslen], remlen);
|
if (remlen > 0) HCL_MEMMOVE (bb->buf, &bb->buf[bcslen], remlen);
|
||||||
bb->len = remlen;
|
bb->len = remlen;
|
||||||
|
|
||||||
arg->xlen = ucslen;
|
arg->xlen = ucslen;
|
||||||
@ -3391,7 +3400,7 @@ static int cci_handler (hcl_t* hcl, hcl_io_cmd_t cmd, void* arg)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
static HCL_INLINE int open_in_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
static HCL_INLINE int open_udi_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
||||||
{
|
{
|
||||||
xtn_t* xtn = GET_XTN(hcl);
|
xtn_t* xtn = GET_XTN(hcl);
|
||||||
bb_t* bb = HCL_NULL;
|
bb_t* bb = HCL_NULL;
|
||||||
@ -3433,7 +3442,7 @@ oops:
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HCL_INLINE int close_in_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
static HCL_INLINE int close_udi_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
||||||
{
|
{
|
||||||
/*xtn_t* xtn = GET_XTN(hcl);*/
|
/*xtn_t* xtn = GET_XTN(hcl);*/
|
||||||
bb_t* bb;
|
bb_t* bb;
|
||||||
@ -3448,7 +3457,7 @@ static HCL_INLINE int close_in_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HCL_INLINE int read_in_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
static HCL_INLINE int read_udi_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
||||||
{
|
{
|
||||||
/*xtn_t* xtn = GET_XTN(hcl);*/
|
/*xtn_t* xtn = GET_XTN(hcl);*/
|
||||||
bb_t* bb;
|
bb_t* bb;
|
||||||
@ -3491,7 +3500,7 @@ static HCL_INLINE int read_in_stream (hcl_t* hcl, hcl_io_udiarg_t* arg)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
remlen = bb->len - bcslen;
|
remlen = bb->len - bcslen;
|
||||||
if (remlen > 0) memmove (bb->buf, &bb->buf[bcslen], remlen);
|
if (remlen > 0) HCL_MEMMOVE (bb->buf, &bb->buf[bcslen], remlen);
|
||||||
bb->len = remlen;
|
bb->len = remlen;
|
||||||
|
|
||||||
arg->xlen = ucslen;
|
arg->xlen = ucslen;
|
||||||
@ -3503,13 +3512,13 @@ static int udi_handler (hcl_t* hcl, hcl_io_cmd_t cmd, void* arg)
|
|||||||
switch (cmd)
|
switch (cmd)
|
||||||
{
|
{
|
||||||
case HCL_IO_OPEN:
|
case HCL_IO_OPEN:
|
||||||
return open_in_stream(hcl, (hcl_io_udiarg_t*)arg);
|
return open_udi_stream(hcl, (hcl_io_udiarg_t*)arg);
|
||||||
|
|
||||||
case HCL_IO_CLOSE:
|
case HCL_IO_CLOSE:
|
||||||
return close_in_stream(hcl, (hcl_io_udiarg_t*)arg);
|
return close_udi_stream(hcl, (hcl_io_udiarg_t*)arg);
|
||||||
|
|
||||||
case HCL_IO_READ:
|
case HCL_IO_READ:
|
||||||
return read_in_stream(hcl, (hcl_io_udiarg_t*)arg);
|
return read_udi_stream(hcl, (hcl_io_udiarg_t*)arg);
|
||||||
|
|
||||||
case HCL_IO_FLUSH:
|
case HCL_IO_FLUSH:
|
||||||
/* no effect on an input stream */
|
/* no effect on an input stream */
|
||||||
@ -3523,7 +3532,7 @@ static int udi_handler (hcl_t* hcl, hcl_io_cmd_t cmd, void* arg)
|
|||||||
|
|
||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
|
|
||||||
static HCL_INLINE int open_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
static HCL_INLINE int open_udo_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
||||||
{
|
{
|
||||||
xtn_t* xtn = GET_XTN(hcl);
|
xtn_t* xtn = GET_XTN(hcl);
|
||||||
FILE* fp;
|
FILE* fp;
|
||||||
@ -3547,7 +3556,7 @@ static HCL_INLINE int open_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HCL_INLINE int close_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
static HCL_INLINE int close_udo_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
||||||
{
|
{
|
||||||
/*xtn_t* xtn = GET_XTN(hcl);*/
|
/*xtn_t* xtn = GET_XTN(hcl);*/
|
||||||
FILE* fp;
|
FILE* fp;
|
||||||
@ -3559,7 +3568,7 @@ static HCL_INLINE int close_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HCL_INLINE int write_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
static HCL_INLINE int write_udo_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
||||||
{
|
{
|
||||||
/*xtn_t* xtn = GET_XTN(hcl);*/
|
/*xtn_t* xtn = GET_XTN(hcl);*/
|
||||||
const hcl_ooch_t* ptr;
|
const hcl_ooch_t* ptr;
|
||||||
@ -3599,7 +3608,7 @@ static HCL_INLINE int write_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HCL_INLINE int write_bytes_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
static HCL_INLINE int write_bytes_udo_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
||||||
{
|
{
|
||||||
/*xtn_t* xtn = GET_XTN(hcl);*/
|
/*xtn_t* xtn = GET_XTN(hcl);*/
|
||||||
const hcl_uint8_t* ptr;
|
const hcl_uint8_t* ptr;
|
||||||
@ -3616,7 +3625,7 @@ static HCL_INLINE int write_bytes_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HCL_INLINE int flush_out_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
static HCL_INLINE int flush_udo_stream (hcl_t* hcl, hcl_io_udoarg_t* arg)
|
||||||
{
|
{
|
||||||
FILE* fp;
|
FILE* fp;
|
||||||
|
|
||||||
@ -3632,19 +3641,19 @@ static int udo_handler (hcl_t* hcl, hcl_io_cmd_t cmd, void* arg)
|
|||||||
switch (cmd)
|
switch (cmd)
|
||||||
{
|
{
|
||||||
case HCL_IO_OPEN:
|
case HCL_IO_OPEN:
|
||||||
return open_out_stream(hcl, (hcl_io_udoarg_t*)arg);
|
return open_udo_stream(hcl, (hcl_io_udoarg_t*)arg);
|
||||||
|
|
||||||
case HCL_IO_CLOSE:
|
case HCL_IO_CLOSE:
|
||||||
return close_out_stream(hcl, (hcl_io_udoarg_t*)arg);
|
return close_udo_stream(hcl, (hcl_io_udoarg_t*)arg);
|
||||||
|
|
||||||
case HCL_IO_WRITE:
|
case HCL_IO_WRITE:
|
||||||
return write_out_stream(hcl, (hcl_io_udoarg_t*)arg);
|
return write_udo_stream(hcl, (hcl_io_udoarg_t*)arg);
|
||||||
|
|
||||||
case HCL_IO_WRITE_BYTES:
|
case HCL_IO_WRITE_BYTES:
|
||||||
return write_bytes_out_stream(hcl, (hcl_io_udoarg_t*)arg);
|
return write_bytes_udo_stream(hcl, (hcl_io_udoarg_t*)arg);
|
||||||
|
|
||||||
case HCL_IO_FLUSH:
|
case HCL_IO_FLUSH:
|
||||||
return flush_out_stream(hcl, (hcl_io_udoarg_t*)arg);
|
return flush_udo_stream(hcl, (hcl_io_udoarg_t*)arg);
|
||||||
|
|
||||||
default:
|
default:
|
||||||
hcl_seterrnum (hcl, HCL_EINTERN);
|
hcl_seterrnum (hcl, HCL_EINTERN);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user