STMT = 'STMT'
ID = 'ID'
STRING = 'STRING'
INT = 'INT'
NUMERIC = 'NUMERIC'
NEW_LINE = "NEW_LINE"
OPERATOR = "OPERATOR"
COMPARISON_OPERATOR = "COMPARISON_OPERATOR"
SPECIAL_OPERATOR = "SPECIAL_OPERATOR"
BRACKET = "BRACKET"
SQUARE_BRACKET = "SQUARE_BRACKET"
KEYWORD = "KEYWORD"
PRINT_KEYWORD = "PRINT_KEYWORD"
BSLINT_COMMAND = 'BSLINT_COMMAND'
COMMENT = "COMMENT"
ERROR = "ERROR"
WARNING = "WARNING"
CURLY_BRACKET = 'CURLY_BRACKET'
SEMI_COLON = 'SEMI_COLON'
AT_SYMBOL = 'AT_SYMBOL'
HASH_SYMBOL = 'HASH_SYMBOL'
VALUE = "VALUE"
NOT = "NOT"
WHILE = "WHILE"
FOR = "FOR"
FOR_EACH = "FOR_EACH"
TYPE = "TYPE"
DOT = "DOT"
COLON = "COLON"
AS = "AS"
AND = "AND"
OR = "OR"
COMMA = "COMMA"
OPEN_PARENTHESIS = "OPEN_PARENTHESIS"
CLOSE_PARENTHESIS = "CLOSE_PARENTHESIS"
OPEN_SQUARE_BRACKET = "OPEN_SQUARE_BRACKET"
CLOSE_SQUARE_BRACKET = "CLOSE_SQUARE_BRACKET"
OPEN_CURLY_BRACKET = "OPEN_CURLY_BRACKET"
CLOSE_CURLY_BRACKET = "CLOSE_CURLY_BRACKET"
PLUS = 'PLUS'
MINUS = 'MINUS'
EQUALS = "EQUALS"
INVALID = "INVALID"
NATIVE_FUNCTION = "NATIVE_FUNCTION"
COMPONENT = "COMPONENT"
INTERFACE = "INTERFACE"
EVENT = "EVENT"
FUNCTION = "FUNCTION"
SUB = "SUB"
IN = "IN"
TO = "TO"
STEP = "STEP"
IF_STMT = "IF_STMT"
IF = "IF"
THEN = "THEN"
EXIT = "EXIT"
GOTO = "GOTO"
RETURN = "RETURN"
RETURN_STMT = "RETURN_STMT"
VAR_AS = "VAR_AS"
FUNCTION_CALL = "FUNCTION_CALL"
BUILT_IN_FUNCTION = "BUILT_IN_FUNCTION"
ANONYMOUS_FUNCTION_DECLARATION = "ANONYMOUS_FUNCTION_DECLARATION"
ANONYMOUS_FUNCTION_BLOCK = "ANONYMOUS_FUNCTION_BLOCK"
ARGUMENT = "ARGUMENT"
PRINT_ARGUMENT = "PRINT_ARGUMENT"
FUNCTION_DECLARATION = "FUNCTION_DECLARATION"
PARAM = "PARAM"
FOR_STMT = "FOR_STMT"
FOR_EACH_STMT = "FOR_EACH_STMT"
WHILE_STMT = "WHILE_STMT"
PRINT_STMT = "PRINT_STMT"
BLOCK_STMT = "BLOCK_STMT"
ELSE_IF = "ELSE_IF"
ELSE_IF_STMT = "ELSE_IF_STMT"
ELSE_IF_BLOCK = "ELSE_IF_BLOCK"
IF_BLOCK = "IF_BLOCK"
ELSE = "ELSE"
ELSE_STMT = "ELSE_STMT"
ENUMERABLE_OBJECT = "ENUMERABLE_OBJECT"
ARRAY_ARGUMENT = "ARRAY_ARGUMENT"
ASSOCIATIVE_ARRAY_ARGUMENT = "ASSOCIATIVE_ARRAY_ARGUMENT"
CONDITION = "CONDITION"
EXIT_STMT = "EXIT_STMT"
ASSERT = "ASSERT"

END_IF = "END_IF"
END_FOR = "END_FOR"
END_WHILE = "END_WHILE"
END_FUNCTION = "END_FUNCTION"
END_SUB = "END_SUB"
END = "END"
END_IF_TOKEN = "END_IF_TOKEN"
END_FOR_TOKEN = "END_FOR_TOKEN"
END_WHILE_TOKEN = "END_WHILE_TOKEN"
END_FUNCTION_TOKEN = "END_FUNCTION_TOKEN"
END_SUB_TOKEN = "END_SUB_TOKEN"
END_TOKEN = "END_TOKEN"

INCREMENT_INDENTATION = 1
DECREMENT_INDENTATION = -1
NO_INDENTATION = 0
SPECIAL_INDENTATION = 2
PENULTIMATE_CHARACTER = -2
ALLOWED_SUB_DIR_NUM = 5
PRIORITY_ZERO = 0
PRIORITY_ONE = 1
PRIORITY_TWO = 2
PRIORITY_THREE = 3
PRIORITY_FOUR = 4
PRIORITY_FIVE = 5
PRIORITY_SIX = 6

ERRORS = "ERRORS"
WARNINGS = "WARNINGS"
IGNORE = "ignore"
STATUS = "Status"
TOKENS = "Tokens"
CHECK_COMMENT = "check_comment"
CHECK_COMMAS_IN_OBJECT = "check_commas_in_object"
CHECK_TRAILING_COMMA_IN_OBJECT = "check_trailing_comma_in_object"
PARAMS = "params"
TODOS = "TODOs"
ALLOW_TODOS = "allow_TODOs"
ALLOW_GENERIC_COMMENTS = "allow_generic_comments"
FORMAT = "format"
ERROR_KEY = "error_key"
ERROR_PARAMS = "error_params"
CHECK_FILE_ENCODING = "check_file_encoding"
SOURCE_FILE_ENCODING = "source_file_encoding"
CHECK_INDENTATION = "check_indentation"
CHECK_TRACE_FREE = "check_trace_free"
MAX_LINE_LENGTH = "max_line_length"
CONSECUTIVE_EMPTY_LINES = "consecutive_empty_lines"
SKIP_FILE = "skip_file"
SKIP_LINE = "skip_line"
SPACES_AROUND_OPERATORS = "spaces_around_operators"
SPELL_CHECK = "spell_check"
CHECK_METHOD_DECLARATION_SPACING = "check_method_declaration_spacing"
METHOD_SPACES = "method_spaces"
TRAILING_WHITE_SPACE = "trailing_white_space"
ACTIVE = "active"
ONLY_TAB_INDENTS = "only_tab_indents"
TAB_SIZE = "tab_size"
REM = 'rem'
MATCH = "match"
TOKEN_LEXER_TYPE = "token_lexer_type"
TOKEN_PARSER_TYPE = "token_parser_type"
INDENTATION_LEVEL = "indentation_level"
COMMAND = "command"
SUCCESS = "Success"
STATEMENT_GRAMMAR = "STATEMENT_GRAMMAR"
PROGRAM_GRAMMAR = "PROGRAM_GRAMMAR"
