Есть ли способ использовать функцию локатора массива в качестве условия для функции локатора массива? Примерно так:
Я знаю, что могу просто перебрать массивы, но я надеюсь на более лаконичный метод
module tb;
typedef struct {
string name;
int id;
} positions_t;
typedef struct {
positions_t positions[];
string unit_name;
} injector_t;
injector_t injectors[$] = '{
'{
unit_name: "unit1",
positions: '{
'{name: "ha", id:0},
'{name: "he", id:0},
'{name: "hi", id:0}
}
}
};
injector_t filtered_injectors[$];
initial begin
// LIKE THIS!
filtered_injectors = injectors.find with (
item.positions.find with (item.name == "hi")
);
$display("filtered list = %p", filtered_injectors);
end
endmodule