package builtin.system;
import builtin.BuiltinSub;
import gui.Heap;
import gui.MintException;
import gui.Pointer;
import gui.SmartList;
/**
*
* @author Oliver Chu
*/
public class Swap extends BuiltinSub {
@Override
public Pointer apply(SmartList<Pointer> args) throws MintException {
Pointer firstReal = args.get(0);
Pointer secondReal = args.get(1);
Heap.swapReals(firstReal, secondReal);
SmartList<Pointer> swapped = new SmartList<Pointer>();
swapped.add(secondReal);
swapped.add(firstReal);
return Heap.allocateList(swapped);
}
}