import javax.annotation.Nullable;
/**
- *
* Model statement
*
* There are two base types of model statements:
* @param <A> Argument type ({@link Void} if statement does not have argument.)
*/
public interface ModelStatement<A> {
-
/**
* Statement Definition of this statement.
*
@Nonnull StatementDefinition statementDefinition();
/**
- *
* Returns statement argument
*
* @return statement argument or null if statement does not have argument.
* @return statement source.
*/
@Nonnull StatementSource getStatementSource();
-
}