UniTO/anno2/Sem2/lft/lab/SymbolTable.java
Francesco Mecca 94b459ec45 lab
2019-07-04 16:09:56 +02:00

21 lines
678 B
Java

import java.util.*;
public class SymbolTable {
Map <String, Integer> OffsetMap = new HashMap <String,Integer>();
public void insert( String s, int address ) {
if( !OffsetMap.containsValue(address) )
OffsetMap.put(s,address);
else
throw new IllegalArgumentException("Reference to a memory location already occupied by another variable");
}
public int lookupAddress ( String s ) {
if( OffsetMap.containsKey(s) )
return OffsetMap.get(s);
else
return -1;
// throw new IllegalArgumentException("Unknown variable");
}
}