EXPECTED      = True
UNEXPECTED    = False
ACCEPTED      = True
REJECTED      = False
EOF           = "PEG_EOF"
EOL           = "PEG_EOL"
REJECT        = "PEG_REJECT"
ASSERT        = "PEG_ASSERT"
AT_LEAST_ZERO = "PEG_AT_LEAST_ZERO"
AT_LEAST_ONE  = "PEG_AT_LEAST_ONE"
SEQUENCE      = "PEG_SEQUENCE"
OPTIONAL      = "PEG_OPTIONAL"
CHOICE        = "PEG_CHOICE"
TERMINAL      = "PEG_TERMINAL"
ANON_TERMINAL = "PEG_ANON_TERMINAL"
NON_TERMINAL  = "PEG_NON_TERMINAL"
EOF_POSITION_MARKER = (-1,-1)
EOF_MARKER = "PEG_EOF"
EOL_MARKER = "PEG_EOL"
PRIMITIVE_TYPES = {
    EOF,
    EOL,
    REJECT,
    ASSERT,
    AT_LEAST_ZERO,
    AT_LEAST_ONE,
    SEQUENCE,
    OPTIONAL,
    CHOICE
}
EXPRESSION_TYPES = PRIMITIVE_TYPES | { TERMINAL, ANON_TERMINAL, NON_TERMINAL}

BOLD_PREFIX = "\033[1m"
RED_PREFIX = "\033[31m"
GREEN_PREFIX = "\033[32m"
YELLOW_PREFIX = "\033[33m"
RESET_POSTFIX = "\033[0m"
