return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 28: // CANCION ::= song IDENTIF BPM llave_i llave_d
{
YMLSong RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int bpmleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int bpmright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Integer bpm = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
YMLSong s = new YMLSong(bpm);
RESULT =s;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CANCION",2, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 27: // CANCION ::= song IDENTIF BPM llave_i RITMOCAN llave_d
{
YMLSong RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int bpmleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int bpmright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
Integer bpm = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
LinkedList<YMLRhythm> r = (LinkedList<YMLRhythm>)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
YMLSong s = null;
if(continuar)
{
s = new YMLSong(bpm);
for(YMLRhythm ritmo: r) s.addRhythm(ritmo, 1);
}
RESULT = s;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CANCION",2, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 26: // CANCION ::= song IDENTIF BPM llave_i PISTAS llave_d
{
YMLSong RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int bpmleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int bpmright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
Integer bpm = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
LinkedList<String[]> list = (LinkedList<String[]>)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
YMLSong s = null;
if(continuar)
{
s = new YMLSong(bpm);
for(String[] p: list) s.addTrack(p[0],p[1]);
}
RESULT = s;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CANCION",2, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 25: // CANCION ::= song IDENTIF BPM llave_i RITMOCAN PISTAS llave_d
{
YMLSong RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
int bpmleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int bpmright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
Integer bpm = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
LinkedList<YMLRhythm> r = (LinkedList<YMLRhythm>)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
LinkedList<String[]> list = (LinkedList<String[]>)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
YMLSong s = null;
if(continuar)
{
s = new YMLSong(bpm);
for(YMLRhythm ritmo: r) s.addRhythm(ritmo);
for(String[] p: list) s.addTrack(p[0],p[1]);
}
RESULT = s;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CANCION",2, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-6)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 24: // CANAL ::= channel parentesis_i INSTRUM parentesis_d IDENTIF dospuntos PULSOS puntocoma
{
String[] RESULT =null;
int insleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).left;
int insright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).right;
String ins = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int pulsosleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int pulsosright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
String pulsos = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
String[] canal=null;
if(continuar)
{
String instrumento = YMLInstrument.getInstrumentRealName(ins);
canal = new String[]{instrumento,pulsos};
}
RESULT = canal;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CANAL",4, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-7)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 23: // CANALES ::= CANAL CANALES
{
LinkedList<String[]> RESULT =null;
int canalleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int canalright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
String[] canal = (String[])((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int canalesleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int canalesright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
LinkedList<String[]> canales = (LinkedList<String[]>)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
LinkedList<String[]> lista = new LinkedList<String[]>();
if(continuar)
{
lista.add(canal);
lista.addAll(canales);
}
RESULT = lista;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CANALES",5, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 22: // CANALES ::= CANAL
{
LinkedList<String[]> RESULT =null;
int canalleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int canalright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String[] canal = (String[])((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
LinkedList< String[]> lista = new LinkedList<String[]>();
if(continuar)
{
lista.add(canal);
}
RESULT = lista;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CANALES",5, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 21: // RITMO ::= rhythm error
{
YMLRhythm RESULT =null;
continuar = false;
CUP$parser$result = parser.getSymbolFactory().newSymbol("RITMO",6, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 20: // RITMO ::= rhythm IDENTIF llave_i CANALES llave_d
{
YMLRhythm RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int canalesleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int canalesright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
LinkedList<String[]> canales = (LinkedList<String[]>)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
YMLRhythm ritmo = new YMLRhythm();
if(continuar){
for(String[] canal: canales){
ritmo.addRhythmTrack(canal[0], canal[1]);
}
if(!existeRitmo(ide)){
ritmosMap.put(ide,ritmo);
}else{
ritmosMap.remove(ide);
ritmosMap.put(ide, ritmo);
parser.imprime.error("WARNING: Sobreescritura del ritmo " + ide,'M');
}
}
RESULT = ritmo;
CUP$parser$result = parser.getSymbolFactory().newSymbol("RITMO",6, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 19: // ACORDE ::= NOTA MODO
{
String RESULT =null;
int nleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int nright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
String n = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int mleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int mright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String m = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
String acorde=n+m;
RESULT = acorde;
CUP$parser$result = parser.getSymbolFactory().newSymbol("ACORDE",7, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 18: // SONIDO ::= SILENCIO DURACION
{
String RESULT =null;
int sileft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int siright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
Object si = (Object)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int dleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int dright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String d = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
String sonido = si+d;
RESULT = sonido;
CUP$parser$result = parser.getSymbolFactory().newSymbol("SONIDO",8, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 17: // SONIDO ::= ACORDE
{
String RESULT =null;
int aleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int aright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String a = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
RESULT = a;
CUP$parser$result = parser.getSymbolFactory().newSymbol("SONIDO",8, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 16: // SONIDO ::= VARID
{
String RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
if(continuar){
if(existeVar(ide)){
RESULT = sonidosMap.get(ide);
}else{
parser.imprime.error("ERROR: No existe la variable $"+ide,'M');
continuar=false;
}
}
CUP$parser$result = parser.getSymbolFactory().newSymbol("SONIDO",8, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 15: // SONIDO ::= NOTA OCTAVA DURACION
{
String RESULT =null;
int nleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String n = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
Integer o = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int dleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int dright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String d = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
String sonido = n+o+d;
RESULT = sonido;
CUP$parser$result = parser.getSymbolFactory().newSymbol("SONIDO",8, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 14: // SONIDO ::= NOTA MODIF OCTAVA DURACION
{
String RESULT =null;
int nleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int nright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String n = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int moleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int moright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String mo = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
Integer o = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int dleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int dright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String d = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
//System.out.println("Nota: "+n+" Modif: "+mo+" Octava: "+o + " Duracion: " + d);
String sonido = n+mo+o+d;
RESULT = sonido;
CUP$parser$result = parser.getSymbolFactory().newSymbol("SONIDO",8, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 13: // SONIDOS ::= SONIDO SONIDOS
{
String RESULT =null;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
String s = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int listasonidosleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int listasonidosright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String listasonidos = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
String sonidos = s+" "+listasonidos;
RESULT = sonidos;
CUP$parser$result = parser.getSymbolFactory().newSymbol("SONIDOS",9, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 12: // SONIDOS ::= SONIDO
{
String RESULT =null;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String s = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
RESULT = s;
CUP$parser$result = parser.getSymbolFactory().newSymbol("SONIDOS",9, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 11: // VARID ::= error
{
String RESULT =null;
continuar=false;
CUP$parser$result = parser.getSymbolFactory().newSymbol("VARID",10, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 10: // VARID ::= dolar IDENTIF
{
String RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
RESULT = ide;
CUP$parser$result = parser.getSymbolFactory().newSymbol("VARID",10, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 9: // VARIABLE ::= VARID error
{
String RESULT =null;
continuar = false;
CUP$parser$result = parser.getSymbolFactory().newSymbol("VARIABLE",11, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 8: // VARIABLE ::= VARID igual SONIDOS puntocoma
{
String RESULT =null;
int ideleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int ideright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String ide = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int listasonidosleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int listasonidosright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
String listasonidos = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
sonidosMap.put(ide,preprocesarListaSonidos(listasonidos));
RESULT = sonidosMap.get(ide);
CUP$parser$result = parser.getSymbolFactory().newSymbol("VARIABLE",11, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 7: // CABECERA ::= RITMO CABECERA
{
Object RESULT =null;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CABECERA",13, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 6: // CABECERA ::= VARIABLE CABECERA
{
Object RESULT =null;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CABECERA",13, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 5: // CABECERA ::= RITMO
{
Object RESULT =null;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CABECERA",13, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 4: // CABECERA ::= VARIABLE
{
Object RESULT =null;
CUP$parser$result = parser.getSymbolFactory().newSymbol("CABECERA",13, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 3: // COMP ::= error
{
Object RESULT =null;
parser.imprime.error("Canción irreproducible",'S');
CUP$parser$result = parser.getSymbolFactory().newSymbol("COMP",12, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 2: // COMP ::= CANCION
{
Object RESULT =null;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
YMLSong s = (YMLSong)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
if(continuar) s.testPlay();
else parser.imprime.error("Canción irreproducible",'M');
CUP$parser$result = parser.getSymbolFactory().newSymbol("COMP",12, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 1: // $START ::= COMP EOF
{
Object RESULT =null;
int start_valleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int start_valright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
Object start_val = (Object)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = start_val;
CUP$parser$result = parser.getSymbolFactory().newSymbol("$START",0, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
/* ACCEPT */
CUP$parser$parser.done_parsing();
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 0: // COMP ::= CABECERA CANCION
{
Object RESULT =null;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
YMLSong s = (YMLSong)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
if(continuar) s.testPlay();
else parser.imprime.error("Canción irreproducible",'M');
CUP$parser$result = parser.getSymbolFactory().newSymbol("COMP",12, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
}
return CUP$parser$result;