Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public ArrayList<Param> param(){
- Variable v;
- ArrayList<Param> pa = new ArrayList<Param>();
- if (lexer.token != Symbol.LPAR)
- error.signal("'LPAR' expected");
- lexer.nextToken();
- if (lexer.token != Symbol.RPAR){
- do {
- String id;
- Type tipo = null;
- if(lexer.token == Symbol.COMMA)
- lexer.nextToken();
- if(lexer.token == Symbol.STRING){
- tipo = Type.string_type;
- } else if (lexer.token == Symbol.INT){
- tipo = Type.int_type;
- } else if(lexer.token == Symbol.FLOAT){
- tipo = Type.float_type;
- }
- lexer.nextToken();
- id = lexer.getStringValue();
- lexer.nextToken();
- v = new Variable(id, tipo, "0"); //checar o valor, por enquanto vou colocar 0 como padrão
- pa.add(new Param(v));
- hashTable.putInLocal(id, v);
- } while (lexer.token == Symbol.COMMA);
- if (lexer.token != Symbol.RPAR)
- error.signal("'RPAR' expected");
- }
- lexer.nextToken();
- return pa;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement