case IF:
nextAndCheck(ctx, '(', false);
expr = new Expression(_in.getLine());
parseExpression(ctx, expr, '{');
newBlock(ctx,
new BlockDefinition(
new IfDefinition(ctx.block.owner, kw.getLine()), expr, expr.getLine()));
return;
case ELSE:
idef = getLastIf(ctx, kw);
nextAndCheck(ctx, '{', false);
newBlock(ctx, new BlockDefinition(idef, null, kw.getLine()));
return;
case ELIF:
idef = getLastIf(ctx, kw);
expr = new Expression(_in.getLine());
parseExpression(ctx, expr, '{');
newBlock(ctx, new BlockDefinition(idef, expr, kw.getLine()));
return;
}
throw error(kw+" not supported yet", kw);
}