from stringvar import STRING, FIXED_CHAR, ROWID, BINARY
from longvar import LONG_STRING, LONG_BINARY
from datetimevar import DATETIME
from lobvar import NCLOB, CLOB, BLOB, BFILE
from timestampvar import TIMESTAMP
from intervalvar import INTERVAL
from cursorvar import CURSOR

if not python3_or_better():
    from stringvar import UNICODE, FIXED_UNICODE

from variable_type import VariableType
from custom_exceptions import NotSupportedError

# TODO: Not implemented yet
vt_Object = VariableType()
vt_NativeFloat = VariableType()

# this dict is only for debugging purposes.
vt_to_name = {
    vt_DateTime: 'vt_DateTime', 
    vt_Timestamp: 'vt_Timestamp', 
    vt_Interval: 'vt_Interval',
    vt_BLOB :'vt_BLOB',
    vt_BFILE :'vt_BFILE',
    vt_Cursor :'vt_Cursor',
    vt_Object :'vt_Object',
    vt_NativeFloat :'vt_NativeFloat',
    vt_NCLOB :'vt_NCLOB',
    vt_CLOB:  'vt_CLOB',