001package gudusoft.gsqlparser;
002
003import java.util.HashMap;
004import java.util.Map;
005
006public enum ETableKind {
007    etkBase(0),
008    etkTemporary(1),
009    etkGlobalTemporary(2),
010    etkLocalTemporary(3),
011    etkTemp(4),
012    etkGlobalTemp(5),
013    etkLocalTemp(6),
014    etkVolatile(7),
015    etkLocalVolatile(8),
016    etkGlobalVolatile(9),
017    etkSet(10), //teradata specific
018    etkMultiset(11), //Ansi
019    etkExternal(12),
020    etkTransient(13),
021    etkLocal(14),
022    etkUnlogged(15),
023    etkDynamic(16), //snowflake
024    etkHybrid(17),
025    etkTransientDynamic(18), //snowflake
026    ; //snowflake
027
028    private final int value;
029    private static final Map<Integer, ETableKind> map = new HashMap<>();
030
031    static {
032        for (ETableKind tableKind : ETableKind.values()) {
033            map.put(tableKind.value, tableKind);
034        }
035    }
036
037    private ETableKind(int value) {
038        this.value = value;
039    }
040
041    public int getValue() {
042        return value;
043    }
044
045    public static ETableKind fromValue(int value) {
046        return map.get(value);
047    }
048}