Introduce the Handler API.
This commit is contained in:
parent
e6c7ee74f5
commit
e80818607c
|
|
@ -0,0 +1,14 @@
|
|||
package jetbrains.mps.logic.reactor.program;
|
||||
|
||||
/**
|
||||
* @author Fedor Isakov
|
||||
*/
|
||||
public abstract class Handler {
|
||||
|
||||
public abstract String name();
|
||||
|
||||
public abstract ConstraintSymbol primarySymbol();
|
||||
|
||||
public abstract Iterable<Rule> rules();
|
||||
|
||||
}
|
||||
|
|
@ -14,7 +14,13 @@ public abstract class Program {
|
|||
|
||||
public abstract Iterable<PredicateSymbol> predicateSymbols();
|
||||
|
||||
/**
|
||||
* @deprecated use handlers().foreach{ yieldAll it.rules() }
|
||||
* @return
|
||||
*/
|
||||
@Deprecated
|
||||
public abstract Iterable<Rule> rules();
|
||||
|
||||
public abstract Iterable<Handler> handlers();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -88,6 +88,8 @@ class MemProgram(val name: String, val myRules : List<Rule>, val registry: Const
|
|||
registry.predicateSymbols()
|
||||
|
||||
override fun rules(): Iterable<Rule> = unmodifiableCollection(myRules)
|
||||
|
||||
override fun handlers(): MutableIterable<Handler> = TODO()
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue