in reactor/Core/src/jetbrains/mps/logic/reactor/core/RuleIndex.kt [186:202]
fun clear(cst: Constraint, ruleBit: Int, headPos: Int) {
symbolSelector.remove(ruleBit)
for ((argIdx, arg) in cst.arguments().withIndex()) {
val value2indices = anySelectors[argIdx]
when (arg) {
is MetaLogical<*> ->
// all values should be accepted by a meta logical
wildcardSelectors[argIdx].remove(ruleBit)
is Term ->
termSelectors[argIdx].remove(arg, ruleBit, headPos)
is Any ->
value2indices[arg]?.remove(ruleBit to headPos)
else ->
throw NullPointerException() // never happens
}
}
}