Analizzatore Lessicale e package lt2.calc Scopo: Analizzatore lessicale File: TipoToken.java Token.java espressioni.lex Scanner.java (generato mediante jflex da espressioni.lex) Note relative ai file: ^^^^^^^^^^^^^^^^^^^^^^ *** TipoToken.java Tipo enumerativo che definisce le costanti corrispondenti ai token. *** Token.java Tipo con cui sono rappresentati i token restituiti dall'analizzatore lessicale. *** espressioni.lex File di specifica lessicale dal quale, utilizzando jflex, si genera l'analizzatore lessicale Scanner.java. Il metodo di scansione di tale analizzatore lessicale e' Token getProssimo() L'analizzatore lessicale, quando raggiunge la fine del file di input, restituisce il token FINE. IMPORTANTE: Le classi TipoToken, Token e Scanner appartengono a un package di nome lt2.calc. Per compilarle ed utilizzarle correttamente si consiglia di definire all'interno di una direcoty lt2, una sottodirectory di nome calc. La directory lt2 dovra' essere collocata in una posizione accessibile secondo la variabile di ambiente CLASSPATH. I sorgenti delle tre classi possono essere collocati nella directory calc e compilati. -------------------------------------------------------------------------- File: ElencaToken.java La classe ElencaToken permette di testare l'analizzatore lessicale. Per evitare conflitti sui nomi delle classi da importare, questa classe NON DEVE essere collocata nella directory calc. -------------------------------------------------------------------------- File: EspressioneException.java La classe EspressioneException definisce eccezioni non controllate, che possono essere sollevate dagli analizzatori sintattici in caso di anomalie. IMPORTANTE: la classe fa parte del package lt2.calc, quindi va collocata come le classi TipoToken, Token e Scanner.