pascalinterpreter
Class DataType

java.lang.Object
  extended bypascalinterpreter.DataType
Direct Known Subclasses:
Bool, Int, PointerType, Real, Str

public abstract class DataType
extends java.lang.Object


Constructor Summary
DataType()
           
 
Method Summary
abstract  boolean checkFormat(java.lang.String value)
          Sprawdza, czy podana wartość może zostać przypisana do zmiennej danego typu typu.
abstract  java.lang.String getEmptyValue()
          Zwraca wartość pustą dla konkretnego typu.
abstract  boolean isPossible(Operator operator)
          Metoda sprawdza, czy możliwe jest wykonanie na zmiennych tego typy, jakiejś operacji.
abstract  boolean isPossibleAssign(DataType type)
          Metoda sprawdza, czy możliwe jest przypisanie do zmiennej danego typu, zmiennej typu przekazanego w argumencie.
 boolean isPossibleConversion(DataType secondType)
          Metoba sprawdza, czy możliwa jest domyślna konwersja między dwoma typami.
abstract  DataType makeConversion(DataType secondType)
          Wykonuje domyślną konwersję między konkretnym typem danych i typem przekazanym, jeżeli taka jest możliwa.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataType

public DataType()
Method Detail

checkFormat

public abstract boolean checkFormat(java.lang.String value)
Sprawdza, czy podana wartość może zostać przypisana do zmiennej danego typu typu.

Parameters:
value - - sprawdzana wartość.
Returns:
Zwraca true, jeśli "value" ma odpowiedni format - jeśli nie, to false.

getEmptyValue

public abstract java.lang.String getEmptyValue()
Zwraca wartość pustą dla konkretnego typu.

Returns:
- tekst zawierający wartość pustą dla konkretnego typu.

makeConversion

public abstract DataType makeConversion(DataType secondType)
Wykonuje domyślną konwersję między konkretnym typem danych i typem przekazanym, jeżeli taka jest możliwa.

Parameters:
secondType - - drugi typ danych.
Returns:
Jeżeli domyślna konwersja jest możliwa, to zwraca wspólny typ dla obu typów - jeżeli nie, to null.

isPossibleConversion

public boolean isPossibleConversion(DataType secondType)
Metoba sprawdza, czy możliwa jest domyślna konwersja między dwoma typami.

Parameters:
secondType - - drugi typ danych.
Returns:
True, jeżeli konwersja jest możliwa - jeśli nie, to false.

isPossibleAssign

public abstract boolean isPossibleAssign(DataType type)
Metoda sprawdza, czy możliwe jest przypisanie do zmiennej danego typu, zmiennej typu przekazanego w argumencie.

Parameters:
type - - sprawdzany typ.
Returns:
True, jeżeli przypisanie jest możliwe. Jeżeli nie jest, to false.

isPossible

public abstract boolean isPossible(Operator operator)
Metoda sprawdza, czy możliwe jest wykonanie na zmiennych tego typy, jakiejś operacji.

Parameters:
operator - - sprawdzany operator.
Returns:
Tru, jeżeli operacja jest możliwa. Jeśli nie, to false.