/**
* Effective model statement which should be used to derive application behaviour.
*
- * @param <A> Argument type ({@link Void} if statement does not have argument.)
- * @param <D> Class representing declared version of this statement.
+ * @param <A>
+ * Argument type ({@link Void} if statement does not have argument.)
+ * @param <S>
+ * Class representing declared version of this statement.
*/
-public interface EffectiveStatement<A, D extends DeclaredStatement<A>> extends ModelStatement<A> {
+public interface EffectiveStatement<A, S extends DeclaredStatement<A>> extends ModelStatement<A> {
+
/**
* Returns statement, which was explicit declaration of this effective
* statement.
* statement or null if statement was inferred from context.
*/
@Nullable
- D getDeclared();
+ S getDeclared();
/**
* Returns value associated with supplied identifier.