1 package de.lathanda.eos.baseparser;
 
    3 import de.lathanda.eos.vm.Command;
 
    4 import de.lathanda.eos.vm.DebugPoint;
 
    5 import de.lathanda.eos.vm.ReservedVariables;
 
    6 import de.lathanda.eos.vm.commands.CreateVariable;
 
    7 import de.lathanda.eos.vm.commands.GE;
 
    8 import de.lathanda.eos.vm.commands.Jump;
 
    9 import de.lathanda.eos.vm.commands.JumpIf;
 
   10 import de.lathanda.eos.vm.commands.LoadConstant;
 
   11 import de.lathanda.eos.vm.commands.LoadVariable;
 
   12 import de.lathanda.eos.vm.commands.StoreVariable;
 
   13 import de.lathanda.eos.vm.commands.SubtractI;
 
   15 import java.util.ArrayList;
 
   26     private String varName;
 
   40     public void compile(ArrayList<Command> ops, 
boolean autoWindow) 
throws Exception {
 
   41         ArrayList<Command> body = 
new ArrayList<>();
 
   45         timesE.
compile(ops, autoWindow);
 
   48         ops.add(
new Jump(body.size() + 1));
 
   60         ops.add(
new JumpIf(-(8 + body.size())));
 
   78         return "repeat " + timesE + 
" times\n" + 
sequence + 
"endrepeat";
 
void addError(Marker marker, String errorId, Object... data)
abstract void compile(ArrayList< Command > ops, boolean autoWindow)
abstract String getLabel()
final String createText(String id, Object... args)
abstract void resolveNamesAndTypes(Expression with, Environment env)
RepeatTimes(Expression times, Sequence sequence)
void compile(ArrayList< Command > ops, boolean autoWindow)
void resolveNamesAndTypes(Expression with, Environment env)
void resolveNamesAndTypes(Expression with, Environment env)
void compile(ArrayList< Command > ops, boolean autoWindow)
static SystemType getInteger()
String REPEAT_TIMES_INDEX