/** * Método que lleva el control sobre el recorrido para el caso especial del If * * @param tmp Vertice Acual <code>Vertex<StructV></code> */ private boolean ifCase(Vertex<StructV> tmp) { if (tmp.getValue().getSprite() instanceof SpriteIf) { if (ifList.size() != 0) { Sprite currentIf = ifList.get(ifList.size() - 1).getValue().getSprite(); if (!currentIf.equals(tmp.getValue().getSprite())) { ifList.add(tmp); } } else { ifList.add(tmp); } } return false; }
/** * Método que lleva el control sobre el recorrido para el caso especial del For * * @param tmp Vertice Acual <code>Vertex<StructV></code> */ private boolean forCase(Vertex<StructV> tmp) { if (tmp.getValue().getSprite() instanceof SpriteFor) { if (forList.size() != 0) { Sprite currentFor = forList.get(forList.size() - 1); if (!currentFor.equals(tmp.getValue().getSprite())) { forList.add(tmp.getValue().getSprite()); } else { forList.remove(forList.size() - 1); return true; } } else { forList.add(tmp.getValue().getSprite()); } } return false; }
/** * Método que lleva el control sobre el recorrido para el caso especial del While * * @param tmp Vertice Acual <code>Vertex<StructV></code> */ private boolean whileCase(Vertex<StructV> tmp) { if (tmp.getValue().getSprite() instanceof SpriteWhile) { if (whileList.size() != 0) { Sprite currentWhile = whileList.get(whileList.size() - 1); if (!currentWhile.equals(tmp.getValue().getSprite())) { whileList.add(tmp.getValue().getSprite()); } else { whileList.remove(whileList.size() - 1); return true; } } else { whileList.add(tmp.getValue().getSprite()); } } return false; }