from enum import Enum


class SpecialToken(Enum):
    # (Enum, str) -> throws an error
    START_TRIPLE_LIST = "<SOTL>"
    START_TRIPLE = "<SOT>"
    END_TRIPLE = "<EOT>"
    SUBJECT = "<SUBJ>"
    RELATIONSHIP = "<PRED>"
    OBJECT = "<OBJ>"
    ABSTRACT = "<ABS>"

    ## Tasks' Token
    RDF_TO_TEXT = "<RDF2TXT>"
    TEXT_TO_RDF = "<TEXT2RDF>"
    CONTINUE_RDF = "<CONTINUERDF>"
    MASK = "<MASK>"

    # BPE Training:
    # NanoSocrates
    START = "<START>"
    CORPUS_END = "<END>"
    START_OF_SEQUENCE = "<SOS>"
    END_OF_SEQUENCE = "<EOS>"
    PAD = "<PAD>"
    