pascalinterpreter
Class Constant

java.lang.Object
  extended bypascalinterpreter.Variable
      extended bypascalinterpreter.Constant

public class Constant
extends Variable


Field Summary
private static int count
          Licznik automatycznie utworzonych stałych.
private  boolean init
          Stałej można przypisać wartość tylko raz.
private static java.lang.String NAME_SUFFIX
          Stała, określająca końcową część nazwy atomatycznie tworzonych stałych.
 
Fields inherited from class pascalinterpreter.Variable
 
Constructor Summary
Constant(DataType type)
          Tworzy obiekt reprezentujący stałą, automatycznie generuje jej nazwę, oraz inicjuje atrybuty.
Constant(DataType type, java.lang.String name)
          Tworzy obiekt reprezentujący stałą, sprawdza poprawność nazwy, oraz inicjuje atrybuty.
 
Method Summary
private static java.lang.String genName()
          Metoda automatycznie generuje unikalną nazwę dla stałej.
 void setValue(java.lang.String string)
          Metoda umożliwia zainicjowanie stałej.
 
Methods inherited from class pascalinterpreter.Variable
getName, getPointerValue, getType, getValue, makeConversion, setPointerValue, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NAME_SUFFIX

private static final java.lang.String NAME_SUFFIX
Stała, określająca końcową część nazwy atomatycznie tworzonych stałych.

See Also:
Constant Field Values

count

private static int count
Licznik automatycznie utworzonych stałych. Wykorzystywany przy automatycznym generowaniu nazw.


init

private boolean init
Stałej można przypisać wartość tylko raz. Przypisanie wartości stałej, która ma już wartość spowoduje błąd. Ta zmienna określa, czy stała została już zainicjowana, czy też jeszcze nie.

Constructor Detail

Constant

public Constant(DataType type,
                java.lang.String name)
         throws AnalyseException
Tworzy obiekt reprezentujący stałą, sprawdza poprawność nazwy, oraz inicjuje atrybuty.

Parameters:
type - - typ tworzonej stałej
name - - nazwa tworzonej stałej
Throws:
AnalyseException - - wyjątek generowany, jeżeli nazwa zmiennej jest niepoprawna.

Constant

public Constant(DataType type)
Tworzy obiekt reprezentujący stałą, automatycznie generuje jej nazwę, oraz inicjuje atrybuty.

Parameters:
type - - typ tworzonej stałej
Throws:
AnalyseException - - wyjątek generowany, jeżeli nazwa zmiennej jest niepoprawna.
Method Detail

setValue

public void setValue(java.lang.String string)
              throws InternalException
Metoda umożliwia zainicjowanie stałej. Wywołanie jej więcej niż raz powoduje błąd.

Overrides:
setValue in class Variable
Parameters:
string - - wartość zmiennej.
Throws:
InternalException - - wyjątek generowany przy próbie przypisania do zmiennej niepoprawnej wartości.
See Also:
Variable.setValue(java.lang.String)

genName

private static java.lang.String genName()
Metoda automatycznie generuje unikalną nazwę dla stałej. Ponieważ nazwa zaczyna się od inkrementowanej liczby, zapewniona jest unikalność nazw również w stosunku do zmiennych w programie użtykownika, gdzie nie mogą wystąpić zmienne zaczynające się od cyfry.

Returns:
Unikalna nazwa stałej.