В моем дизайне у меня есть N глобальных переменных и метод, который принимает в качестве параметра некоторые из упомянутых параметров, в зависимости от состояния.
Могу ли я передавать глобальные переменные в качестве параметров по ссылке?
В этом документе в Заключительной части прямо говорится, что
"особая форма передачи параметров вызова по ссылке, которую Spin не поддерживает"
Есть ли другой способ сделать это? (т.е. передать имя переменной)
Структура приведена ниже
bit varA = 1;
bit varB = 1;
bit varC = 1;
proctype AProcess(bit AVar){
/* enter_crit_section */
/* change global varN */
/* exit_crit_section */
}
init {
run AProcess(varA)
run AProcess(varB)
run AProcess(varC)
}
P.S. Я не могу использовать, например:
mtype = { A, B, C }
...
proctype AProcess(bit AVar; mtype VAR)
...
run AProcess(varA, A)
а затем проверьте, какая переменная была передана, потому что AProcess не может знать о существовании других переменных