package hu.sztaki.ilab.longneck.process.block; import hu.sztaki.ilab.longneck.Record; import hu.sztaki.ilab.longneck.process.*; /** * Blocks map transformation rules to executable code: every transformation step * is a block of transformation. * * @author Molnar Peter <molnarp@sztaki.mta.hu> */ public interface Block extends Cloneable, SourceInfoContainer { /** * Applies the transformation to the specified record. * * This method is a mutator. * * @param record The record that is transformed. */ public void apply(Record record, VariableSpace parentScope) throws CheckError, BreakException, FailException, FilterException; public Block clone(); }