PageRenderTime 88ms CodeModel.GetById 32ms RepoModel.GetById 1ms app.codeStats 0ms

/scrumdo-web/apps/debug_toolbar/utils/sqlparse/keywords.py

https://github.com/abstract-open-solutions/ScrumDo
Python | 590 lines | 554 code | 35 blank | 1 comment | 0 complexity | 22903d72fc2e4cb692928efaad0efbdd MD5 | raw file
  1. from debug_toolbar.utils.sqlparse.tokens import *
  2. KEYWORDS = {
  3. 'ABORT': Keyword,
  4. 'ABS': Keyword,
  5. 'ABSOLUTE': Keyword,
  6. 'ACCESS': Keyword,
  7. 'ADA': Keyword,
  8. 'ADD': Keyword,
  9. 'ADMIN': Keyword,
  10. 'AFTER': Keyword,
  11. 'AGGREGATE': Keyword,
  12. 'ALIAS': Keyword,
  13. 'ALL': Keyword,
  14. 'ALLOCATE': Keyword,
  15. 'ANALYSE': Keyword,
  16. 'ANALYZE': Keyword,
  17. 'AND': Keyword,
  18. 'ANY': Keyword,
  19. 'ARE': Keyword,
  20. 'AS': Keyword,
  21. 'ASC': Keyword,
  22. 'ASENSITIVE': Keyword,
  23. 'ASSERTION': Keyword,
  24. 'ASSIGNMENT': Keyword,
  25. 'ASYMMETRIC': Keyword,
  26. 'AT': Keyword,
  27. 'ATOMIC': Keyword,
  28. 'AUTHORIZATION': Keyword,
  29. 'AVG': Keyword,
  30. 'BACKWARD': Keyword,
  31. 'BEFORE': Keyword,
  32. 'BEGIN': Keyword,
  33. 'BETWEEN': Keyword,
  34. 'BITVAR': Keyword,
  35. 'BIT_LENGTH': Keyword,
  36. 'BOTH': Keyword,
  37. 'BREADTH': Keyword,
  38. 'BY': Keyword,
  39. # 'C': Keyword, # most likely this is an alias
  40. 'CACHE': Keyword,
  41. 'CALL': Keyword,
  42. 'CALLED': Keyword,
  43. 'CARDINALITY': Keyword,
  44. 'CASCADE': Keyword,
  45. 'CASCADED': Keyword,
  46. 'CASE': Keyword,
  47. 'CAST': Keyword,
  48. 'CATALOG': Keyword,
  49. 'CATALOG_NAME': Keyword,
  50. 'CHAIN': Keyword,
  51. 'CHARACTERISTICS': Keyword,
  52. 'CHARACTER_LENGTH': Keyword,
  53. 'CHARACTER_SET_CATALOG': Keyword,
  54. 'CHARACTER_SET_NAME': Keyword,
  55. 'CHARACTER_SET_SCHEMA': Keyword,
  56. 'CHAR_LENGTH': Keyword,
  57. 'CHECK': Keyword,
  58. 'CHECKED': Keyword,
  59. 'CHECKPOINT': Keyword,
  60. 'CLASS': Keyword,
  61. 'CLASS_ORIGIN': Keyword,
  62. 'CLOB': Keyword,
  63. 'CLOSE': Keyword,
  64. 'CLUSTER': Keyword,
  65. 'COALSECE': Keyword,
  66. 'COBOL': Keyword,
  67. 'COLLATE': Keyword,
  68. 'COLLATION': Keyword,
  69. 'COLLATION_CATALOG': Keyword,
  70. 'COLLATION_NAME': Keyword,
  71. 'COLLATION_SCHEMA': Keyword,
  72. 'COLUMN': Keyword,
  73. 'COLUMN_NAME': Keyword,
  74. 'COMMAND_FUNCTION': Keyword,
  75. 'COMMAND_FUNCTION_CODE': Keyword,
  76. 'COMMENT': Keyword,
  77. 'COMMIT': Keyword,
  78. 'COMMITTED': Keyword,
  79. 'COMPLETION': Keyword,
  80. 'CONDITION_NUMBER': Keyword,
  81. 'CONNECT': Keyword,
  82. 'CONNECTION': Keyword,
  83. 'CONNECTION_NAME': Keyword,
  84. 'CONSTRAINT': Keyword,
  85. 'CONSTRAINTS': Keyword,
  86. 'CONSTRAINT_CATALOG': Keyword,
  87. 'CONSTRAINT_NAME': Keyword,
  88. 'CONSTRAINT_SCHEMA': Keyword,
  89. 'CONSTRUCTOR': Keyword,
  90. 'CONTAINS': Keyword,
  91. 'CONTINUE': Keyword,
  92. 'CONVERSION': Keyword,
  93. 'CONVERT': Keyword,
  94. 'COPY': Keyword,
  95. 'CORRESPONTING': Keyword,
  96. 'COUNT': Keyword,
  97. 'CREATEDB': Keyword,
  98. 'CREATEUSER': Keyword,
  99. 'CROSS': Keyword,
  100. 'CUBE': Keyword,
  101. 'CURRENT': Keyword,
  102. 'CURRENT_DATE': Keyword,
  103. 'CURRENT_PATH': Keyword,
  104. 'CURRENT_ROLE': Keyword,
  105. 'CURRENT_TIME': Keyword,
  106. 'CURRENT_TIMESTAMP': Keyword,
  107. 'CURRENT_USER': Keyword,
  108. 'CURSOR': Keyword,
  109. 'CURSOR_NAME': Keyword,
  110. 'CYCLE': Keyword,
  111. 'DATA': Keyword,
  112. 'DATABASE': Keyword,
  113. 'DATETIME_INTERVAL_CODE': Keyword,
  114. 'DATETIME_INTERVAL_PRECISION': Keyword,
  115. 'DAY': Keyword,
  116. 'DEALLOCATE': Keyword,
  117. 'DECLARE': Keyword,
  118. 'DEFAULT': Keyword,
  119. 'DEFAULTS': Keyword,
  120. 'DEFERRABLE': Keyword,
  121. 'DEFERRED': Keyword,
  122. 'DEFINED': Keyword,
  123. 'DEFINER': Keyword,
  124. 'DELIMITER': Keyword,
  125. 'DELIMITERS': Keyword,
  126. 'DEREF': Keyword,
  127. 'DESC': Keyword,
  128. 'DESCRIBE': Keyword,
  129. 'DESCRIPTOR': Keyword,
  130. 'DESTROY': Keyword,
  131. 'DESTRUCTOR': Keyword,
  132. 'DETERMINISTIC': Keyword,
  133. 'DIAGNOSTICS': Keyword,
  134. 'DICTIONARY': Keyword,
  135. 'DISCONNECT': Keyword,
  136. 'DISPATCH': Keyword,
  137. 'DISTINCT': Keyword,
  138. 'DO': Keyword,
  139. 'DOMAIN': Keyword,
  140. 'DYNAMIC': Keyword,
  141. 'DYNAMIC_FUNCTION': Keyword,
  142. 'DYNAMIC_FUNCTION_CODE': Keyword,
  143. 'EACH': Keyword,
  144. 'ELSE': Keyword,
  145. 'ENCODING': Keyword,
  146. 'ENCRYPTED': Keyword,
  147. 'END': Keyword,
  148. 'END-EXEC': Keyword,
  149. 'EQUALS': Keyword,
  150. 'ESCAPE': Keyword,
  151. 'EVERY': Keyword,
  152. 'EXCEPT': Keyword,
  153. 'ESCEPTION': Keyword,
  154. 'EXCLUDING': Keyword,
  155. 'EXCLUSIVE': Keyword,
  156. 'EXEC': Keyword,
  157. 'EXECUTE': Keyword,
  158. 'EXISTING': Keyword,
  159. 'EXISTS': Keyword,
  160. 'EXTERNAL': Keyword,
  161. 'EXTRACT': Keyword,
  162. 'FALSE': Keyword,
  163. 'FETCH': Keyword,
  164. 'FINAL': Keyword,
  165. 'FIRST': Keyword,
  166. 'FOR': Keyword,
  167. 'FORCE': Keyword,
  168. 'FOREIGN': Keyword,
  169. 'FORTRAN': Keyword,
  170. 'FORWARD': Keyword,
  171. 'FOUND': Keyword,
  172. 'FREE': Keyword,
  173. 'FREEZE': Keyword,
  174. 'FROM': Keyword,
  175. 'FULL': Keyword,
  176. 'FUNCTION': Keyword,
  177. 'G': Keyword,
  178. 'GENERAL': Keyword,
  179. 'GENERATED': Keyword,
  180. 'GET': Keyword,
  181. 'GLOBAL': Keyword,
  182. 'GO': Keyword,
  183. 'GOTO': Keyword,
  184. 'GRANT': Keyword,
  185. 'GRANTED': Keyword,
  186. 'GROUP': Keyword,
  187. 'GROUPING': Keyword,
  188. 'HANDLER': Keyword,
  189. 'HAVING': Keyword,
  190. 'HIERARCHY': Keyword,
  191. 'HOLD': Keyword,
  192. 'HOST': Keyword,
  193. 'IDENTITY': Keyword,
  194. 'IF': Keyword,
  195. 'IGNORE': Keyword,
  196. 'ILIKE': Keyword,
  197. 'IMMEDIATE': Keyword,
  198. 'IMMUTABLE': Keyword,
  199. 'IMPLEMENTATION': Keyword,
  200. 'IMPLICIT': Keyword,
  201. 'IN': Keyword,
  202. 'INCLUDING': Keyword,
  203. 'INCREMENT': Keyword,
  204. 'INDEX': Keyword,
  205. 'INDITCATOR': Keyword,
  206. 'INFIX': Keyword,
  207. 'INHERITS': Keyword,
  208. 'INITIALIZE': Keyword,
  209. 'INITIALLY': Keyword,
  210. 'INNER': Keyword,
  211. 'INOUT': Keyword,
  212. 'INPUT': Keyword,
  213. 'INSENSITIVE': Keyword,
  214. 'INSTANTIABLE': Keyword,
  215. 'INSTEAD': Keyword,
  216. 'INTERSECT': Keyword,
  217. 'INTO': Keyword,
  218. 'INVOKER': Keyword,
  219. 'IS': Keyword,
  220. 'ISNULL': Keyword,
  221. 'ISOLATION': Keyword,
  222. 'ITERATE': Keyword,
  223. 'JOIN': Keyword,
  224. 'K': Keyword,
  225. 'KEY': Keyword,
  226. 'KEY_MEMBER': Keyword,
  227. 'KEY_TYPE': Keyword,
  228. 'LANCOMPILER': Keyword,
  229. 'LANGUAGE': Keyword,
  230. 'LARGE': Keyword,
  231. 'LAST': Keyword,
  232. 'LATERAL': Keyword,
  233. 'LEADING': Keyword,
  234. 'LEFT': Keyword,
  235. 'LENGTH': Keyword,
  236. 'LESS': Keyword,
  237. 'LEVEL': Keyword,
  238. 'LIKE': Keyword,
  239. 'LIMIT': Keyword,
  240. 'LISTEN': Keyword,
  241. 'LOAD': Keyword,
  242. 'LOCAL': Keyword,
  243. 'LOCALTIME': Keyword,
  244. 'LOCALTIMESTAMP': Keyword,
  245. 'LOCATION': Keyword,
  246. 'LOCATOR': Keyword,
  247. 'LOCK': Keyword,
  248. 'LOWER': Keyword,
  249. 'M': Keyword,
  250. 'MAP': Keyword,
  251. 'MATCH': Keyword,
  252. 'MAX': Keyword,
  253. 'MAXVALUE': Keyword,
  254. 'MESSAGE_LENGTH': Keyword,
  255. 'MESSAGE_OCTET_LENGTH': Keyword,
  256. 'MESSAGE_TEXT': Keyword,
  257. 'METHOD': Keyword,
  258. 'MIN': Keyword,
  259. 'MINUTE': Keyword,
  260. 'MINVALUE': Keyword,
  261. 'MOD': Keyword,
  262. 'MODE': Keyword,
  263. 'MODIFIES': Keyword,
  264. 'MODIFY': Keyword,
  265. 'MONTH': Keyword,
  266. 'MORE': Keyword,
  267. 'MOVE': Keyword,
  268. 'MUMPS': Keyword,
  269. 'NAMES': Keyword,
  270. 'NATIONAL': Keyword,
  271. 'NATURAL': Keyword,
  272. 'NCHAR': Keyword,
  273. 'NCLOB': Keyword,
  274. 'NEW': Keyword,
  275. 'NEXT': Keyword,
  276. 'NO': Keyword,
  277. 'NOCREATEDB': Keyword,
  278. 'NOCREATEUSER': Keyword,
  279. 'NONE': Keyword,
  280. 'NOT': Keyword,
  281. 'NOTHING': Keyword,
  282. 'NOTIFY': Keyword,
  283. 'NOTNULL': Keyword,
  284. 'NULL': Keyword,
  285. 'NULLABLE': Keyword,
  286. 'NULLIF': Keyword,
  287. 'OBJECT': Keyword,
  288. 'OCTET_LENGTH': Keyword,
  289. 'OF': Keyword,
  290. 'OFF': Keyword,
  291. 'OFFSET': Keyword,
  292. 'OIDS': Keyword,
  293. 'OLD': Keyword,
  294. 'ON': Keyword,
  295. 'ONLY': Keyword,
  296. 'OPEN': Keyword,
  297. 'OPERATION': Keyword,
  298. 'OPERATOR': Keyword,
  299. 'OPTION': Keyword,
  300. 'OPTIONS': Keyword,
  301. 'OR': Keyword,
  302. 'ORDER': Keyword,
  303. 'ORDINALITY': Keyword,
  304. 'OUT': Keyword,
  305. 'OUTER': Keyword,
  306. 'OUTPUT': Keyword,
  307. 'OVERLAPS': Keyword,
  308. 'OVERLAY': Keyword,
  309. 'OVERRIDING': Keyword,
  310. 'OWNER': Keyword,
  311. 'PAD': Keyword,
  312. 'PARAMETER': Keyword,
  313. 'PARAMETERS': Keyword,
  314. 'PARAMETER_MODE': Keyword,
  315. 'PARAMATER_NAME': Keyword,
  316. 'PARAMATER_ORDINAL_POSITION': Keyword,
  317. 'PARAMETER_SPECIFIC_CATALOG': Keyword,
  318. 'PARAMETER_SPECIFIC_NAME': Keyword,
  319. 'PARAMATER_SPECIFIC_SCHEMA': Keyword,
  320. 'PARTIAL': Keyword,
  321. 'PASCAL': Keyword,
  322. 'PENDANT': Keyword,
  323. 'PLACING': Keyword,
  324. 'PLI': Keyword,
  325. 'POSITION': Keyword,
  326. 'POSTFIX': Keyword,
  327. 'PRECISION': Keyword,
  328. 'PREFIX': Keyword,
  329. 'PREORDER': Keyword,
  330. 'PREPARE': Keyword,
  331. 'PRESERVE': Keyword,
  332. 'PRIMARY': Keyword,
  333. 'PRIOR': Keyword,
  334. 'PRIVILEGES': Keyword,
  335. 'PROCEDURAL': Keyword,
  336. 'PROCEDURE': Keyword,
  337. 'PUBLIC': Keyword,
  338. 'RAISE': Keyword,
  339. 'READ': Keyword,
  340. 'READS': Keyword,
  341. 'RECHECK': Keyword,
  342. 'RECURSIVE': Keyword,
  343. 'REF': Keyword,
  344. 'REFERENCES': Keyword,
  345. 'REFERENCING': Keyword,
  346. 'REINDEX': Keyword,
  347. 'RELATIVE': Keyword,
  348. 'RENAME': Keyword,
  349. 'REPEATABLE': Keyword,
  350. 'REPLACE': Keyword,
  351. 'RESET': Keyword,
  352. 'RESTART': Keyword,
  353. 'RESTRICT': Keyword,
  354. 'RESULT': Keyword,
  355. 'RETURN': Keyword,
  356. 'RETURNED_LENGTH': Keyword,
  357. 'RETURNED_OCTET_LENGTH': Keyword,
  358. 'RETURNED_SQLSTATE': Keyword,
  359. 'RETURNS': Keyword,
  360. 'REVOKE': Keyword,
  361. 'RIGHT': Keyword,
  362. 'ROLE': Keyword,
  363. 'ROLLBACK': Keyword,
  364. 'ROLLUP': Keyword,
  365. 'ROUTINE': Keyword,
  366. 'ROUTINE_CATALOG': Keyword,
  367. 'ROUTINE_NAME': Keyword,
  368. 'ROUTINE_SCHEMA': Keyword,
  369. 'ROW': Keyword,
  370. 'ROWS': Keyword,
  371. 'ROW_COUNT': Keyword,
  372. 'RULE': Keyword,
  373. 'SAVE_POINT': Keyword,
  374. 'SCALE': Keyword,
  375. 'SCHEMA': Keyword,
  376. 'SCHEMA_NAME': Keyword,
  377. 'SCOPE': Keyword,
  378. 'SCROLL': Keyword,
  379. 'SEARCH': Keyword,
  380. 'SECOND': Keyword,
  381. 'SECURITY': Keyword,
  382. 'SELF': Keyword,
  383. 'SENSITIVE': Keyword,
  384. 'SERIALIZABLE': Keyword,
  385. 'SERVER_NAME': Keyword,
  386. 'SESSION': Keyword,
  387. 'SESSION_USER': Keyword,
  388. 'SETOF': Keyword,
  389. 'SETS': Keyword,
  390. 'SHARE': Keyword,
  391. 'SHOW': Keyword,
  392. 'SIMILAR': Keyword,
  393. 'SIMPLE': Keyword,
  394. 'SIZE': Keyword,
  395. 'SOME': Keyword,
  396. 'SOURCE': Keyword,
  397. 'SPACE': Keyword,
  398. 'SPECIFIC': Keyword,
  399. 'SPECIFICTYPE': Keyword,
  400. 'SPECIFIC_NAME': Keyword,
  401. 'SQL': Keyword,
  402. 'SQLCODE': Keyword,
  403. 'SQLERROR': Keyword,
  404. 'SQLEXCEPTION': Keyword,
  405. 'SQLSTATE': Keyword,
  406. 'SQLWARNINIG': Keyword,
  407. 'STABLE': Keyword,
  408. 'START': Keyword,
  409. 'STATE': Keyword,
  410. 'STATEMENT': Keyword,
  411. 'STATIC': Keyword,
  412. 'STATISTICS': Keyword,
  413. 'STDIN': Keyword,
  414. 'STDOUT': Keyword,
  415. 'STORAGE': Keyword,
  416. 'STRICT': Keyword,
  417. 'STRUCTURE': Keyword,
  418. 'STYPE': Keyword,
  419. 'SUBCLASS_ORIGIN': Keyword,
  420. 'SUBLIST': Keyword,
  421. 'SUBSTRING': Keyword,
  422. 'SUM': Keyword,
  423. 'SYMMETRIC': Keyword,
  424. 'SYSID': Keyword,
  425. 'SYSTEM': Keyword,
  426. 'SYSTEM_USER': Keyword,
  427. 'TABLE': Keyword,
  428. 'TABLE_NAME': Keyword,
  429. ' TEMP': Keyword,
  430. 'TEMPLATE': Keyword,
  431. 'TEMPORARY': Keyword,
  432. 'TERMINATE': Keyword,
  433. 'THAN': Keyword,
  434. 'THEN': Keyword,
  435. 'TIMESTAMP': Keyword,
  436. 'TIMEZONE_HOUR': Keyword,
  437. 'TIMEZONE_MINUTE': Keyword,
  438. 'TO': Keyword,
  439. 'TOAST': Keyword,
  440. 'TRAILING': Keyword,
  441. 'TRANSATION': Keyword,
  442. 'TRANSACTIONS_COMMITTED': Keyword,
  443. 'TRANSACTIONS_ROLLED_BACK': Keyword,
  444. 'TRANSATION_ACTIVE': Keyword,
  445. 'TRANSFORM': Keyword,
  446. 'TRANSFORMS': Keyword,
  447. 'TRANSLATE': Keyword,
  448. 'TRANSLATION': Keyword,
  449. 'TREAT': Keyword,
  450. 'TRIGGER': Keyword,
  451. 'TRIGGER_CATALOG': Keyword,
  452. 'TRIGGER_NAME': Keyword,
  453. 'TRIGGER_SCHEMA': Keyword,
  454. 'TRIM': Keyword,
  455. 'TRUE': Keyword,
  456. 'TRUNCATE': Keyword,
  457. 'TRUSTED': Keyword,
  458. 'TYPE': Keyword,
  459. 'UNCOMMITTED': Keyword,
  460. 'UNDER': Keyword,
  461. 'UNENCRYPTED': Keyword,
  462. 'UNION': Keyword,
  463. 'UNIQUE': Keyword,
  464. 'UNKNOWN': Keyword,
  465. 'UNLISTEN': Keyword,
  466. 'UNNAMED': Keyword,
  467. 'UNNEST': Keyword,
  468. 'UNTIL': Keyword,
  469. 'UPPER': Keyword,
  470. 'USAGE': Keyword,
  471. 'USER': Keyword,
  472. 'USER_DEFINED_TYPE_CATALOG': Keyword,
  473. 'USER_DEFINED_TYPE_NAME': Keyword,
  474. 'USER_DEFINED_TYPE_SCHEMA': Keyword,
  475. 'USING': Keyword,
  476. 'VACUUM': Keyword,
  477. 'VALID': Keyword,
  478. 'VALIDATOR': Keyword,
  479. 'VALUES': Keyword,
  480. 'VARIABLE': Keyword,
  481. 'VERBOSE': Keyword,
  482. 'VERSION': Keyword,
  483. 'VIEW': Keyword,
  484. 'VOLATILE': Keyword,
  485. 'WHEN': Keyword,
  486. 'WHENEVER': Keyword,
  487. 'WHERE': Keyword,
  488. 'WITH': Keyword,
  489. 'WITHOUT': Keyword,
  490. 'WORK': Keyword,
  491. 'WRITE': Keyword,
  492. 'YEAR': Keyword,
  493. 'ZONE': Keyword,
  494. 'ARRAY': Name.Builtin,
  495. 'BIGINT': Name.Builtin,
  496. 'BINARY': Name.Builtin,
  497. 'BIT': Name.Builtin,
  498. 'BLOB': Name.Builtin,
  499. 'BOOLEAN': Name.Builtin,
  500. 'CHAR': Name.Builtin,
  501. 'CHARACTER': Name.Builtin,
  502. 'DATE': Name.Builtin,
  503. 'DEC': Name.Builtin,
  504. 'DECIMAL': Name.Builtin,
  505. 'FLOAT': Name.Builtin,
  506. 'INT': Name.Builtin,
  507. 'INTEGER': Name.Builtin,
  508. 'INTERVAL': Name.Builtin,
  509. 'NUMBER': Name.Builtin,
  510. 'NUMERIC': Name.Builtin,
  511. 'REAL': Name.Builtin,
  512. 'SERIAL': Name.Builtin,
  513. 'SMALLINT': Name.Builtin,
  514. 'VARCHAR': Name.Builtin,
  515. 'VARYING': Name.Builtin,
  516. 'INT8': Name.Builtin,
  517. 'SERIAL8': Name.Builtin,
  518. 'TEXT': Name.Builtin,
  519. }
  520. KEYWORDS_COMMON = {
  521. 'SELECT': Keyword.DML,
  522. 'INSERT': Keyword.DML,
  523. 'DELETE': Keyword.DML,
  524. 'UPDATE': Keyword.DML,
  525. 'DROP': Keyword.DDL,
  526. 'CREATE': Keyword.DDL,
  527. 'ALTER': Keyword.DDL,
  528. 'WHERE': Keyword,
  529. 'FROM': Keyword,
  530. 'INNER': Keyword,
  531. 'JOIN': Keyword,
  532. 'AND': Keyword,
  533. 'OR': Keyword,
  534. 'LIKE': Keyword,
  535. 'ON': Keyword,
  536. 'IN': Keyword,
  537. 'SET': Keyword,
  538. 'BY': Keyword,
  539. 'GROUP': Keyword,
  540. 'ORDER': Keyword,
  541. 'LEFT': Keyword,
  542. 'OUTER': Keyword,
  543. 'IF': Keyword,
  544. 'END': Keyword,
  545. 'THEN': Keyword,
  546. 'LOOP': Keyword,
  547. 'AS': Keyword,
  548. 'ELSE': Keyword,
  549. 'FOR': Keyword,
  550. 'CASE': Keyword,
  551. 'WHEN': Keyword,
  552. 'MIN': Keyword,
  553. 'MAX': Keyword,
  554. 'DISTINCT': Keyword,
  555. }