case 44: // Typescope ::= TypeNumber STRING
{
CommandScope RESULT =null;
CommandScope a = (CommandScope)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.elementAt(CUP$CompParser$top-1)).value;
Pos b = (Pos)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
RESULT = new CommandScope(a.pos.merge(b), new PrimSig("String", AttrType.WHERE.make(a.pos.merge(b))), a.isExact, a.startingScope, a.endingScope, a.increment);
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Typescope",71, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 43: // Typescope ::= TypeNumber UNIV
{
CommandScope RESULT =null;
CommandScope e = (CommandScope)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.elementAt(CUP$CompParser$top-1)).value;
Pos f = (Pos)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
if (1==1) throw new ErrorSyntax(e.pos.merge(f), "You cannot set a scope on univ.");
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Typescope",71, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 42: // Typescope ::= TypeNumber SEQ
{
CommandScope RESULT =null;
CommandScope a = (CommandScope)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.elementAt(CUP$CompParser$top-1)).value;
Pos b = (Pos)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
Pos p = a.pos.merge(b);
if (a.endingScope>a.startingScope) throw new ErrorSyntax(p, "Cannot specify a growing scope for \"seq\"");
if (a.isExact) throw new ErrorSyntax(p, "The exactly keyword is redundant here since the number of sequence index has to be exact.");
RESULT = new CommandScope(p, new PrimSig("seq", AttrType.WHERE.make(p)), a.isExact, a.startingScope, a.startingScope, 1);
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Typescope",71, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 41: // Typescope ::= TypeNumber INT
{
CommandScope RESULT =null;
CommandScope a = (CommandScope)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.elementAt(CUP$CompParser$top-1)).value;
Pos b = (Pos)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
Pos p = a.pos.merge(b);
if (a.endingScope>a.startingScope) throw new ErrorSyntax(p, "Cannot specify a growing scope for \"int\"");
if (a.isExact) throw new ErrorSyntax(p, "The exactly keyword is redundant here since the integer bitwidth must be exact.");
RESULT = new CommandScope(p, new PrimSig("int", AttrType.WHERE.make(p)), a.isExact, a.startingScope, a.startingScope, 1);
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Typescope",71, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 40: // Typescope ::= TypeNumber Name
{
CommandScope RESULT =null;
CommandScope a = (CommandScope)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.elementAt(CUP$CompParser$top-1)).value;
ExprVar b = (ExprVar)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
nod(b);
RESULT = new CommandScope(a.pos.merge(b.pos), new PrimSig(b.label, AttrType.WHERE.make(a.pos.merge(b.pos))), a.isExact, a.startingScope, a.endingScope, a.increment);
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Typescope",71, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 39: // Typescopes ::= Typescopes COMMA Typescope
{
List<CommandScope> RESULT =null;
List<CommandScope> a = (List<CommandScope>)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.elementAt(CUP$CompParser$top-2)).value;
CommandScope b = (CommandScope)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
RESULT=a; a.add(b);
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Typescopes",72, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 38: // Typescopes ::= Typescope
{
List<CommandScope> RESULT =null;
CommandScope a = (CommandScope)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
RESULT=new ArrayList<CommandScope>(); RESULT.add(a);
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Typescopes",72, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 37: // Scope ::=
{
List<CommandScope> RESULT =null;
RESULT=new ArrayList<CommandScope>();
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Scope",59, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 36: // Scope ::= FOR Typescopes
{
List<CommandScope> RESULT =null;
List<CommandScope> b = (List<CommandScope>)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
RESULT=b;
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Scope",59, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 35: // Scope ::= FOR NUMBER BUT Typescopes
{
List<CommandScope> RESULT =null;
ExprConstant a = (ExprConstant)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.elementAt(CUP$CompParser$top-2)).value;
List<CommandScope> b = (List<CommandScope>)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
RESULT=b; b.add(new CommandScope(a.pos, new PrimSig("univ", AttrType.WHERE.make(a.pos)), true, a.num, a.num, 1));
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Scope",59, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 34: // Scope ::= FOR NUMBER
{
List<CommandScope> RESULT =null;
ExprConstant a = (ExprConstant)((java_cup_11a.runtime.Symbol) CUP$CompParser$stack.peek()).value;
RESULT=new ArrayList<CommandScope>(); RESULT.add(new CommandScope(a.pos, new PrimSig("univ", AttrType.WHERE.make(a.pos)), true, a.num, a.num, 1));
CUP$CompParser$result = parser.getSymbolFactory().newSymbol("Scope",59, RESULT);
}
return CUP$CompParser$result;
/*. . . . . . . . . . . . . . . . . . . .*/