in core/src/main/java/org/apache/jsieve/SieveParserVisitorImpl.java [205:223]
public Object visit(ASTstart node, Object data) throws SieveException {
// The data object must be the MailAdapter to process
if (!(data instanceof MailAdapter))
throw new SieveException("Expecting an instance of "
+ MailAdapter.class.getName()
+ " as data, received an instance of "
+ (data == null ? "<null>" : data.getClass().getName())
+ ".");
// Start is an implicit Block
// There will be one child, an instance of Commands
List children = new ArrayList(node.jjtGetNumChildren());
Commands commands = (Commands) ((List) node.childrenAccept(this,
children)).get(0);
Block block = new Block(commands);
context.setCoordinate(node.getCoordinate());
// Answer the result of executing the Block
return block.execute((MailAdapter) data, context);
}