[issue]to fix {} symbol tag

This commit is contained in:
Yanting Zhang 2022-08-27 17:20:44 +08:00
parent 937e1b3631
commit 55c7288031
2 changed files with 39 additions and 12 deletions

View File

@ -20,18 +20,44 @@ impl NonblockingAssignmentStatement {
assert_eq!(json_children[1]["tag"], "<=");
assert_eq!(json_children[3]["tag"], ";");
let json_symbol_identifier = Tools::match_tags(
vec![&json_children[0]],
vec![
Tag::LP_VALUE,
Tag::REFERENCE_CALL_BASE,
Tag::REFERENCE,
Tag::LOCAL_ROOT,
Tag::UNQUALIFIED_ID,
Tag::SYMBOL_IDENTIFIER,
],
);
assert_eq!(json_symbol_identifier.len(), 1);
let lpvalue_paths = [
vec![
Tag::LP_VALUE,
Tag::REFERENCE_CALL_BASE,
Tag::REFERENCE,
Tag::LOCAL_ROOT,
Tag::UNQUALIFIED_ID,
Tag::SYMBOL_IDENTIFIER,
],
vec![
Tag::LP_VALUE,
Tag::BRACEGROUP,
Tag::OPEN_RANGE_LIST,
Tag::EXPRESSION,
Tag::REFERENCE_CALL_BASE,
Tag::REFERENCE,
Tag::LOCAL_ROOT,
Tag::UNQUALIFIED_ID,
Tag::SYMBOL_IDENTIFIER,
],
];
let json_symbol_identifier: Vec<_> = lpvalue_paths
.iter()
.flat_map(|x|Tools::match_tags(vec![&json_children[0]], x.to_vec()))
.collect();
// let json_symbol_identifier = Tools::match_tags(
// vec![&json_children[0]],
// vec![
// Tag::LP_VALUE,
// Tag::REFERENCE_CALL_BASE,
// Tag::REFERENCE,
// Tag::LOCAL_ROOT,
// Tag::UNQUALIFIED_ID,
// Tag::SYMBOL_IDENTIFIER,
// ],
// );
//assert_eq!(json_symbol_identifier.len(), 1);
(json_symbol_identifier[0], &json_children[2])
};

View File

@ -131,4 +131,5 @@ impl Tag {
pub const LOGICAL_NOT: &'static str = "!";
pub const BITWISE_NOT: &'static str = "~";
pub const XOR_REDUCE: &'static str = "^";
pub const BRACEGROUP: &'static str = "kBraceGroup";
}