export type Punctuator = typeof JavaScriptPunctuator ; export const JavaScriptPunctuator = { COLON : ":" , COMMA : "," , PERIOD : "." , SEMI_COLON : ";" , OPEN_BRAC : "[" , CLOSE_BRAC : "]" , OPEN_BRACE : "{" , CLOSE_BRACE : "}" , OPEN_PAREN : "(" , CLOSE_PAREN : ")" , INCREMENT : "++" , DECREMENT : "--" , UNARY_PLUS : "+" , UNARY_MINUS : "-" , DIVISION : "/" , MULTIPLICATION : "*" , REMAINDER : "%" , EXPONENTIAL : "**" , LESS_THAN : "<" , GREATER_THAN : ">" , GREATER_EQUAL_THAN : ">=" , LESS_EQUAL_THAN : "<=" , INEQUALITY : "!=" , EQUAL : "==" , NON_IDENTITY : "!==" , STRICT_EQUAL : "===" , BITWISE_NOT : "~" , BITWISE_LEFT : "<<" , BITWISE_RIGHT : ">>" , BITWISE_UNSIGNED_RIGHT : ">>>" , BITWISE_AND : "&" , BITWISE_OR : "|" , BITWISE_XOR : "^" , LOGICAL_NOT : "!" , LOGICAL_AND : "&&" , LOGICAL_OR : "||" , TERNARY : "?" , ASSIGNMENT : "=" , MULTIPLICATION_ASSIGNMENT : "*=" , ADDITION_ASSIGNMENT : "+=" , DIVISION_ASSIGNMENT : "/=" , SUBTRACTION_ASSIGNMENT : "-=" , LEFT_SHIFT_ASSIGNMENT : "<<=" , RIGHT_SHIFT_ASSIGNMENT : ">>=" , UNSIGNED_RIGHT_SHIFT_ASSIGNMENT : ">>>=" , BITWISE_AND_ASSIGNMENT : "&=" , BITWISE_OR_ASSIGNMENT : "|=" , BITWISE_XOR_ASSIGNMENT : "^=" , LOGICAL_OR_ASSIGNMENT : "||=" , LOGICAL_AND_ASSIGNMENT : "&&=" , LOGICAL_NULLISH_ASSIGNMENT : "??=" , } ; export const HackLangPunctuator = { ... JavaScriptPunctuator , ASSIGNMENT : "gleich" , EQUAL : "gleichgleich" , STRICT_EQUAL : "gleichgleichgleich" , } ;