mie: parse: update parse_region_list to use new Op->Region linking mechanism
This commit is contained in:
@@ -107,8 +107,7 @@ MIE_API bool mie_parser_parse_register_list(
|
|||||||
MIE_API bool mie_parser_parse_region(
|
MIE_API bool mie_parser_parse_region(
|
||||||
struct mie_parser *ctx, struct mie_op *parent, struct mie_region *region);
|
struct mie_parser *ctx, struct mie_op *parent, struct mie_region *region);
|
||||||
MIE_API bool mie_parser_parse_region_list(
|
MIE_API bool mie_parser_parse_region_list(
|
||||||
struct mie_parser *ctx, struct mie_op *parent,
|
struct mie_parser *ctx, struct mie_op *parent);
|
||||||
MIE_VECTOR_REF_PARAM(struct mie_region, out));
|
|
||||||
MIE_API bool mie_parser_parse_anonymous_block(
|
MIE_API bool mie_parser_parse_anonymous_block(
|
||||||
struct mie_parser *ctx, struct mie_name_map *names,
|
struct mie_parser *ctx, struct mie_name_map *names,
|
||||||
struct mie_block *block);
|
struct mie_block *block);
|
||||||
|
|||||||
@@ -798,15 +798,13 @@ bool mie_parser_parse_region(
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool mie_parser_parse_region_list(
|
bool mie_parser_parse_region_list(struct mie_parser *ctx, struct mie_op *parent)
|
||||||
struct mie_parser *ctx, struct mie_op *parent,
|
|
||||||
MIE_VECTOR_REF_PARAM(struct mie_region, out))
|
|
||||||
{
|
{
|
||||||
if (!mie_parser_check_symbol(ctx, MIE_SYM_LEFT_BRACE)) {
|
if (!mie_parser_check_symbol(ctx, MIE_SYM_LEFT_BRACE)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct mie_region *region = mie_vector_ref_emplace_back(out, NULL);
|
struct mie_region *region = mie_op_add_region(parent);
|
||||||
|
|
||||||
if (!mie_parser_parse_region(ctx, parent, region)) {
|
if (!mie_parser_parse_region(ctx, parent, region)) {
|
||||||
return false;
|
return false;
|
||||||
@@ -821,7 +819,7 @@ bool mie_parser_parse_region_list(
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct mie_region *region = mie_vector_ref_emplace_back(out, NULL);
|
struct mie_region *region = mie_op_add_region(parent);
|
||||||
|
|
||||||
if (!mie_parser_parse_region(ctx, parent, region)) {
|
if (!mie_parser_parse_region(ctx, parent, region)) {
|
||||||
|
|
||||||
@@ -1087,8 +1085,7 @@ static bool parse_generic_op(
|
|||||||
|
|
||||||
if (mie_parser_parse_symbol(ctx, MIE_SYM_LEFT_PAREN)) {
|
if (mie_parser_parse_symbol(ctx, MIE_SYM_LEFT_PAREN)) {
|
||||||
mie_parser_parse_linefeed(ctx);
|
mie_parser_parse_linefeed(ctx);
|
||||||
if (!mie_parser_parse_region_list(
|
if (!mie_parser_parse_region_list(ctx, dest)) {
|
||||||
ctx, dest, MIE_VECTOR_REF(dest->op_regions))) {
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user