pgsql.js 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359
  1. /*---------------------------------------------------------------------------------------------
  2. * Copyright (c) Microsoft Corporation. All rights reserved.
  3. * Licensed under the MIT License. See License.txt in the project root for license information.
  4. *--------------------------------------------------------------------------------------------*/
  5. define('vs/basic-languages/pgsql/pgsql',["require", "exports"], function (require, exports) {
  6. "use strict";
  7. Object.defineProperty(exports, "__esModule", { value: true });
  8. exports.language = exports.conf = void 0;
  9. exports.conf = {
  10. comments: {
  11. lineComment: '--',
  12. blockComment: ['/*', '*/']
  13. },
  14. brackets: [
  15. ['{', '}'],
  16. ['[', ']'],
  17. ['(', ')']
  18. ],
  19. autoClosingPairs: [
  20. { open: '{', close: '}' },
  21. { open: '[', close: ']' },
  22. { open: '(', close: ')' },
  23. { open: '"', close: '"' },
  24. { open: "'", close: "'" }
  25. ],
  26. surroundingPairs: [
  27. { open: '{', close: '}' },
  28. { open: '[', close: ']' },
  29. { open: '(', close: ')' },
  30. { open: '"', close: '"' },
  31. { open: "'", close: "'" }
  32. ]
  33. };
  34. exports.language = {
  35. defaultToken: '',
  36. tokenPostfix: '.sql',
  37. ignoreCase: true,
  38. brackets: [
  39. { open: '[', close: ']', token: 'delimiter.square' },
  40. { open: '(', close: ')', token: 'delimiter.parenthesis' }
  41. ],
  42. keywords: [
  43. 'A',
  44. 'ABORT',
  45. 'ABS',
  46. 'ABSENT',
  47. 'ABSOLUTE',
  48. 'ACCESS',
  49. 'ACCORDING',
  50. 'ACTION',
  51. 'ADA',
  52. 'ADD',
  53. 'ADMIN',
  54. 'AFTER',
  55. 'AGGREGATE',
  56. 'ALL',
  57. 'ALLOCATE',
  58. 'ALSO',
  59. 'ALTER',
  60. 'ALWAYS',
  61. 'ANALYSE',
  62. 'ANALYZE',
  63. 'AND',
  64. 'ANY',
  65. 'ARE',
  66. 'ARRAY',
  67. 'ARRAY_AGG',
  68. 'ARRAY_MAX_CARDINALITY',
  69. 'AS',
  70. 'ASC',
  71. 'ASENSITIVE',
  72. 'ASSERTION',
  73. 'ASSIGNMENT',
  74. 'ASYMMETRIC',
  75. 'AT',
  76. 'ATOMIC',
  77. 'ATTRIBUTE',
  78. 'ATTRIBUTES',
  79. 'AUTHORIZATION',
  80. 'AVG',
  81. 'BACKWARD',
  82. 'BASE64',
  83. 'BEFORE',
  84. 'BEGIN',
  85. 'BEGIN_FRAME',
  86. 'BEGIN_PARTITION',
  87. 'BERNOULLI',
  88. 'BETWEEN',
  89. 'BIGINT',
  90. 'BINARY',
  91. 'BIT',
  92. 'BIT_LENGTH',
  93. 'BLOB',
  94. 'BLOCKED',
  95. 'BOM',
  96. 'BOOLEAN',
  97. 'BOTH',
  98. 'BREADTH',
  99. 'BY',
  100. 'C',
  101. 'CACHE',
  102. 'CALL',
  103. 'CALLED',
  104. 'CARDINALITY',
  105. 'CASCADE',
  106. 'CASCADED',
  107. 'CASE',
  108. 'CAST',
  109. 'CATALOG',
  110. 'CATALOG_NAME',
  111. 'CEIL',
  112. 'CEILING',
  113. 'CHAIN',
  114. 'CHAR',
  115. 'CHARACTER',
  116. 'CHARACTERISTICS',
  117. 'CHARACTERS',
  118. 'CHARACTER_LENGTH',
  119. 'CHARACTER_SET_CATALOG',
  120. 'CHARACTER_SET_NAME',
  121. 'CHARACTER_SET_SCHEMA',
  122. 'CHAR_LENGTH',
  123. 'CHECK',
  124. 'CHECKPOINT',
  125. 'CLASS',
  126. 'CLASS_ORIGIN',
  127. 'CLOB',
  128. 'CLOSE',
  129. 'CLUSTER',
  130. 'COALESCE',
  131. 'COBOL',
  132. 'COLLATE',
  133. 'COLLATION',
  134. 'COLLATION_CATALOG',
  135. 'COLLATION_NAME',
  136. 'COLLATION_SCHEMA',
  137. 'COLLECT',
  138. 'COLUMN',
  139. 'COLUMNS',
  140. 'COLUMN_NAME',
  141. 'COMMAND_FUNCTION',
  142. 'COMMAND_FUNCTION_CODE',
  143. 'COMMENT',
  144. 'COMMENTS',
  145. 'COMMIT',
  146. 'COMMITTED',
  147. 'CONCURRENTLY',
  148. 'CONDITION',
  149. 'CONDITION_NUMBER',
  150. 'CONFIGURATION',
  151. 'CONFLICT',
  152. 'CONNECT',
  153. 'CONNECTION',
  154. 'CONNECTION_NAME',
  155. 'CONSTRAINT',
  156. 'CONSTRAINTS',
  157. 'CONSTRAINT_CATALOG',
  158. 'CONSTRAINT_NAME',
  159. 'CONSTRAINT_SCHEMA',
  160. 'CONSTRUCTOR',
  161. 'CONTAINS',
  162. 'CONTENT',
  163. 'CONTINUE',
  164. 'CONTROL',
  165. 'CONVERSION',
  166. 'CONVERT',
  167. 'COPY',
  168. 'CORR',
  169. 'CORRESPONDING',
  170. 'COST',
  171. 'COUNT',
  172. 'COVAR_POP',
  173. 'COVAR_SAMP',
  174. 'CREATE',
  175. 'CROSS',
  176. 'CSV',
  177. 'CUBE',
  178. 'CUME_DIST',
  179. 'CURRENT',
  180. 'CURRENT_CATALOG',
  181. 'CURRENT_DATE',
  182. 'CURRENT_DEFAULT_TRANSFORM_GROUP',
  183. 'CURRENT_PATH',
  184. 'CURRENT_ROLE',
  185. 'CURRENT_ROW',
  186. 'CURRENT_SCHEMA',
  187. 'CURRENT_TIME',
  188. 'CURRENT_TIMESTAMP',
  189. 'CURRENT_TRANSFORM_GROUP_FOR_TYPE',
  190. 'CURRENT_USER',
  191. 'CURSOR',
  192. 'CURSOR_NAME',
  193. 'CYCLE',
  194. 'DATA',
  195. 'DATABASE',
  196. 'DATALINK',
  197. 'DATE',
  198. 'DATETIME_INTERVAL_CODE',
  199. 'DATETIME_INTERVAL_PRECISION',
  200. 'DAY',
  201. 'DB',
  202. 'DEALLOCATE',
  203. 'DEC',
  204. 'DECIMAL',
  205. 'DECLARE',
  206. 'DEFAULT',
  207. 'DEFAULTS',
  208. 'DEFERRABLE',
  209. 'DEFERRED',
  210. 'DEFINED',
  211. 'DEFINER',
  212. 'DEGREE',
  213. 'DELETE',
  214. 'DELIMITER',
  215. 'DELIMITERS',
  216. 'DENSE_RANK',
  217. 'DEPENDS',
  218. 'DEPTH',
  219. 'DEREF',
  220. 'DERIVED',
  221. 'DESC',
  222. 'DESCRIBE',
  223. 'DESCRIPTOR',
  224. 'DETERMINISTIC',
  225. 'DIAGNOSTICS',
  226. 'DICTIONARY',
  227. 'DISABLE',
  228. 'DISCARD',
  229. 'DISCONNECT',
  230. 'DISPATCH',
  231. 'DISTINCT',
  232. 'DLNEWCOPY',
  233. 'DLPREVIOUSCOPY',
  234. 'DLURLCOMPLETE',
  235. 'DLURLCOMPLETEONLY',
  236. 'DLURLCOMPLETEWRITE',
  237. 'DLURLPATH',
  238. 'DLURLPATHONLY',
  239. 'DLURLPATHWRITE',
  240. 'DLURLSCHEME',
  241. 'DLURLSERVER',
  242. 'DLVALUE',
  243. 'DO',
  244. 'DOCUMENT',
  245. 'DOMAIN',
  246. 'DOUBLE',
  247. 'DROP',
  248. 'DYNAMIC',
  249. 'DYNAMIC_FUNCTION',
  250. 'DYNAMIC_FUNCTION_CODE',
  251. 'EACH',
  252. 'ELEMENT',
  253. 'ELSE',
  254. 'EMPTY',
  255. 'ENABLE',
  256. 'ENCODING',
  257. 'ENCRYPTED',
  258. 'END',
  259. 'END-EXEC',
  260. 'END_FRAME',
  261. 'END_PARTITION',
  262. 'ENFORCED',
  263. 'ENUM',
  264. 'EQUALS',
  265. 'ESCAPE',
  266. 'EVENT',
  267. 'EVERY',
  268. 'EXCEPT',
  269. 'EXCEPTION',
  270. 'EXCLUDE',
  271. 'EXCLUDING',
  272. 'EXCLUSIVE',
  273. 'EXEC',
  274. 'EXECUTE',
  275. 'EXISTS',
  276. 'EXP',
  277. 'EXPLAIN',
  278. 'EXPRESSION',
  279. 'EXTENSION',
  280. 'EXTERNAL',
  281. 'EXTRACT',
  282. 'FALSE',
  283. 'FAMILY',
  284. 'FETCH',
  285. 'FILE',
  286. 'FILTER',
  287. 'FINAL',
  288. 'FIRST',
  289. 'FIRST_VALUE',
  290. 'FLAG',
  291. 'FLOAT',
  292. 'FLOOR',
  293. 'FOLLOWING',
  294. 'FOR',
  295. 'FORCE',
  296. 'FOREIGN',
  297. 'FORTRAN',
  298. 'FORWARD',
  299. 'FOUND',
  300. 'FRAME_ROW',
  301. 'FREE',
  302. 'FREEZE',
  303. 'FROM',
  304. 'FS',
  305. 'FULL',
  306. 'FUNCTION',
  307. 'FUNCTIONS',
  308. 'FUSION',
  309. 'G',
  310. 'GENERAL',
  311. 'GENERATED',
  312. 'GET',
  313. 'GLOBAL',
  314. 'GO',
  315. 'GOTO',
  316. 'GRANT',
  317. 'GRANTED',
  318. 'GREATEST',
  319. 'GROUP',
  320. 'GROUPING',
  321. 'GROUPS',
  322. 'HANDLER',
  323. 'HAVING',
  324. 'HEADER',
  325. 'HEX',
  326. 'HIERARCHY',
  327. 'HOLD',
  328. 'HOUR',
  329. 'ID',
  330. 'IDENTITY',
  331. 'IF',
  332. 'IGNORE',
  333. 'ILIKE',
  334. 'IMMEDIATE',
  335. 'IMMEDIATELY',
  336. 'IMMUTABLE',
  337. 'IMPLEMENTATION',
  338. 'IMPLICIT',
  339. 'IMPORT',
  340. 'IN',
  341. 'INCLUDING',
  342. 'INCREMENT',
  343. 'INDENT',
  344. 'INDEX',
  345. 'INDEXES',
  346. 'INDICATOR',
  347. 'INHERIT',
  348. 'INHERITS',
  349. 'INITIALLY',
  350. 'INLINE',
  351. 'INNER',
  352. 'INOUT',
  353. 'INPUT',
  354. 'INSENSITIVE',
  355. 'INSERT',
  356. 'INSTANCE',
  357. 'INSTANTIABLE',
  358. 'INSTEAD',
  359. 'INT',
  360. 'INTEGER',
  361. 'INTEGRITY',
  362. 'INTERSECT',
  363. 'INTERSECTION',
  364. 'INTERVAL',
  365. 'INTO',
  366. 'INVOKER',
  367. 'IS',
  368. 'ISNULL',
  369. 'ISOLATION',
  370. 'JOIN',
  371. 'K',
  372. 'KEY',
  373. 'KEY_MEMBER',
  374. 'KEY_TYPE',
  375. 'LABEL',
  376. 'LAG',
  377. 'LANGUAGE',
  378. 'LARGE',
  379. 'LAST',
  380. 'LAST_VALUE',
  381. 'LATERAL',
  382. 'LEAD',
  383. 'LEADING',
  384. 'LEAKPROOF',
  385. 'LEAST',
  386. 'LEFT',
  387. 'LENGTH',
  388. 'LEVEL',
  389. 'LIBRARY',
  390. 'LIKE',
  391. 'LIKE_REGEX',
  392. 'LIMIT',
  393. 'LINK',
  394. 'LISTEN',
  395. 'LN',
  396. 'LOAD',
  397. 'LOCAL',
  398. 'LOCALTIME',
  399. 'LOCALTIMESTAMP',
  400. 'LOCATION',
  401. 'LOCATOR',
  402. 'LOCK',
  403. 'LOCKED',
  404. 'LOGGED',
  405. 'LOWER',
  406. 'M',
  407. 'MAP',
  408. 'MAPPING',
  409. 'MATCH',
  410. 'MATCHED',
  411. 'MATERIALIZED',
  412. 'MAX',
  413. 'MAXVALUE',
  414. 'MAX_CARDINALITY',
  415. 'MEMBER',
  416. 'MERGE',
  417. 'MESSAGE_LENGTH',
  418. 'MESSAGE_OCTET_LENGTH',
  419. 'MESSAGE_TEXT',
  420. 'METHOD',
  421. 'MIN',
  422. 'MINUTE',
  423. 'MINVALUE',
  424. 'MOD',
  425. 'MODE',
  426. 'MODIFIES',
  427. 'MODULE',
  428. 'MONTH',
  429. 'MORE',
  430. 'MOVE',
  431. 'MULTISET',
  432. 'MUMPS',
  433. 'NAME',
  434. 'NAMES',
  435. 'NAMESPACE',
  436. 'NATIONAL',
  437. 'NATURAL',
  438. 'NCHAR',
  439. 'NCLOB',
  440. 'NESTING',
  441. 'NEW',
  442. 'NEXT',
  443. 'NFC',
  444. 'NFD',
  445. 'NFKC',
  446. 'NFKD',
  447. 'NIL',
  448. 'NO',
  449. 'NONE',
  450. 'NORMALIZE',
  451. 'NORMALIZED',
  452. 'NOT',
  453. 'NOTHING',
  454. 'NOTIFY',
  455. 'NOTNULL',
  456. 'NOWAIT',
  457. 'NTH_VALUE',
  458. 'NTILE',
  459. 'NULL',
  460. 'NULLABLE',
  461. 'NULLIF',
  462. 'NULLS',
  463. 'NUMBER',
  464. 'NUMERIC',
  465. 'OBJECT',
  466. 'OCCURRENCES_REGEX',
  467. 'OCTETS',
  468. 'OCTET_LENGTH',
  469. 'OF',
  470. 'OFF',
  471. 'OFFSET',
  472. 'OIDS',
  473. 'OLD',
  474. 'ON',
  475. 'ONLY',
  476. 'OPEN',
  477. 'OPERATOR',
  478. 'OPTION',
  479. 'OPTIONS',
  480. 'OR',
  481. 'ORDER',
  482. 'ORDERING',
  483. 'ORDINALITY',
  484. 'OTHERS',
  485. 'OUT',
  486. 'OUTER',
  487. 'OUTPUT',
  488. 'OVER',
  489. 'OVERLAPS',
  490. 'OVERLAY',
  491. 'OVERRIDING',
  492. 'OWNED',
  493. 'OWNER',
  494. 'P',
  495. 'PAD',
  496. 'PARALLEL',
  497. 'PARAMETER',
  498. 'PARAMETER_MODE',
  499. 'PARAMETER_NAME',
  500. 'PARAMETER_ORDINAL_POSITION',
  501. 'PARAMETER_SPECIFIC_CATALOG',
  502. 'PARAMETER_SPECIFIC_NAME',
  503. 'PARAMETER_SPECIFIC_SCHEMA',
  504. 'PARSER',
  505. 'PARTIAL',
  506. 'PARTITION',
  507. 'PASCAL',
  508. 'PASSING',
  509. 'PASSTHROUGH',
  510. 'PASSWORD',
  511. 'PATH',
  512. 'PERCENT',
  513. 'PERCENTILE_CONT',
  514. 'PERCENTILE_DISC',
  515. 'PERCENT_RANK',
  516. 'PERIOD',
  517. 'PERMISSION',
  518. 'PLACING',
  519. 'PLANS',
  520. 'PLI',
  521. 'POLICY',
  522. 'PORTION',
  523. 'POSITION',
  524. 'POSITION_REGEX',
  525. 'POWER',
  526. 'PRECEDES',
  527. 'PRECEDING',
  528. 'PRECISION',
  529. 'PREPARE',
  530. 'PREPARED',
  531. 'PRESERVE',
  532. 'PRIMARY',
  533. 'PRIOR',
  534. 'PRIVILEGES',
  535. 'PROCEDURAL',
  536. 'PROCEDURE',
  537. 'PROGRAM',
  538. 'PUBLIC',
  539. 'QUOTE',
  540. 'RANGE',
  541. 'RANK',
  542. 'READ',
  543. 'READS',
  544. 'REAL',
  545. 'REASSIGN',
  546. 'RECHECK',
  547. 'RECOVERY',
  548. 'RECURSIVE',
  549. 'REF',
  550. 'REFERENCES',
  551. 'REFERENCING',
  552. 'REFRESH',
  553. 'REGR_AVGX',
  554. 'REGR_AVGY',
  555. 'REGR_COUNT',
  556. 'REGR_INTERCEPT',
  557. 'REGR_R2',
  558. 'REGR_SLOPE',
  559. 'REGR_SXX',
  560. 'REGR_SXY',
  561. 'REGR_SYY',
  562. 'REINDEX',
  563. 'RELATIVE',
  564. 'RELEASE',
  565. 'RENAME',
  566. 'REPEATABLE',
  567. 'REPLACE',
  568. 'REPLICA',
  569. 'REQUIRING',
  570. 'RESET',
  571. 'RESPECT',
  572. 'RESTART',
  573. 'RESTORE',
  574. 'RESTRICT',
  575. 'RESULT',
  576. 'RETURN',
  577. 'RETURNED_CARDINALITY',
  578. 'RETURNED_LENGTH',
  579. 'RETURNED_OCTET_LENGTH',
  580. 'RETURNED_SQLSTATE',
  581. 'RETURNING',
  582. 'RETURNS',
  583. 'REVOKE',
  584. 'RIGHT',
  585. 'ROLE',
  586. 'ROLLBACK',
  587. 'ROLLUP',
  588. 'ROUTINE',
  589. 'ROUTINE_CATALOG',
  590. 'ROUTINE_NAME',
  591. 'ROUTINE_SCHEMA',
  592. 'ROW',
  593. 'ROWS',
  594. 'ROW_COUNT',
  595. 'ROW_NUMBER',
  596. 'RULE',
  597. 'SAVEPOINT',
  598. 'SCALE',
  599. 'SCHEMA',
  600. 'SCHEMA_NAME',
  601. 'SCOPE',
  602. 'SCOPE_CATALOG',
  603. 'SCOPE_NAME',
  604. 'SCOPE_SCHEMA',
  605. 'SCROLL',
  606. 'SEARCH',
  607. 'SECOND',
  608. 'SECTION',
  609. 'SECURITY',
  610. 'SELECT',
  611. 'SELECTIVE',
  612. 'SELF',
  613. 'SENSITIVE',
  614. 'SEQUENCE',
  615. 'SEQUENCES',
  616. 'SERIALIZABLE',
  617. 'SERVER',
  618. 'SERVER_NAME',
  619. 'SESSION',
  620. 'SESSION_USER',
  621. 'SET',
  622. 'SETOF',
  623. 'SETS',
  624. 'SHARE',
  625. 'SHOW',
  626. 'SIMILAR',
  627. 'SIMPLE',
  628. 'SIZE',
  629. 'SKIP',
  630. 'SMALLINT',
  631. 'SNAPSHOT',
  632. 'SOME',
  633. 'SOURCE',
  634. 'SPACE',
  635. 'SPECIFIC',
  636. 'SPECIFICTYPE',
  637. 'SPECIFIC_NAME',
  638. 'SQL',
  639. 'SQLCODE',
  640. 'SQLERROR',
  641. 'SQLEXCEPTION',
  642. 'SQLSTATE',
  643. 'SQLWARNING',
  644. 'SQRT',
  645. 'STABLE',
  646. 'STANDALONE',
  647. 'START',
  648. 'STATE',
  649. 'STATEMENT',
  650. 'STATIC',
  651. 'STATISTICS',
  652. 'STDDEV_POP',
  653. 'STDDEV_SAMP',
  654. 'STDIN',
  655. 'STDOUT',
  656. 'STORAGE',
  657. 'STRICT',
  658. 'STRIP',
  659. 'STRUCTURE',
  660. 'STYLE',
  661. 'SUBCLASS_ORIGIN',
  662. 'SUBMULTISET',
  663. 'SUBSTRING',
  664. 'SUBSTRING_REGEX',
  665. 'SUCCEEDS',
  666. 'SUM',
  667. 'SYMMETRIC',
  668. 'SYSID',
  669. 'SYSTEM',
  670. 'SYSTEM_TIME',
  671. 'SYSTEM_USER',
  672. 'T',
  673. 'TABLE',
  674. 'TABLES',
  675. 'TABLESAMPLE',
  676. 'TABLESPACE',
  677. 'TABLE_NAME',
  678. 'TEMP',
  679. 'TEMPLATE',
  680. 'TEMPORARY',
  681. 'TEXT',
  682. 'THEN',
  683. 'TIES',
  684. 'TIME',
  685. 'TIMESTAMP',
  686. 'TIMEZONE_HOUR',
  687. 'TIMEZONE_MINUTE',
  688. 'TO',
  689. 'TOKEN',
  690. 'TOP_LEVEL_COUNT',
  691. 'TRAILING',
  692. 'TRANSACTION',
  693. 'TRANSACTIONS_COMMITTED',
  694. 'TRANSACTIONS_ROLLED_BACK',
  695. 'TRANSACTION_ACTIVE',
  696. 'TRANSFORM',
  697. 'TRANSFORMS',
  698. 'TRANSLATE',
  699. 'TRANSLATE_REGEX',
  700. 'TRANSLATION',
  701. 'TREAT',
  702. 'TRIGGER',
  703. 'TRIGGER_CATALOG',
  704. 'TRIGGER_NAME',
  705. 'TRIGGER_SCHEMA',
  706. 'TRIM',
  707. 'TRIM_ARRAY',
  708. 'TRUE',
  709. 'TRUNCATE',
  710. 'TRUSTED',
  711. 'TYPE',
  712. 'TYPES',
  713. 'UESCAPE',
  714. 'UNBOUNDED',
  715. 'UNCOMMITTED',
  716. 'UNDER',
  717. 'UNENCRYPTED',
  718. 'UNION',
  719. 'UNIQUE',
  720. 'UNKNOWN',
  721. 'UNLINK',
  722. 'UNLISTEN',
  723. 'UNLOGGED',
  724. 'UNNAMED',
  725. 'UNNEST',
  726. 'UNTIL',
  727. 'UNTYPED',
  728. 'UPDATE',
  729. 'UPPER',
  730. 'URI',
  731. 'USAGE',
  732. 'USER',
  733. 'USER_DEFINED_TYPE_CATALOG',
  734. 'USER_DEFINED_TYPE_CODE',
  735. 'USER_DEFINED_TYPE_NAME',
  736. 'USER_DEFINED_TYPE_SCHEMA',
  737. 'USING',
  738. 'VACUUM',
  739. 'VALID',
  740. 'VALIDATE',
  741. 'VALIDATOR',
  742. 'VALUE',
  743. 'VALUES',
  744. 'VALUE_OF',
  745. 'VARBINARY',
  746. 'VARCHAR',
  747. 'VARIADIC',
  748. 'VARYING',
  749. 'VAR_POP',
  750. 'VAR_SAMP',
  751. 'VERBOSE',
  752. 'VERSION',
  753. 'VERSIONING',
  754. 'VIEW',
  755. 'VIEWS',
  756. 'VOLATILE',
  757. 'WHEN',
  758. 'WHENEVER',
  759. 'WHERE',
  760. 'WHITESPACE',
  761. 'WIDTH_BUCKET',
  762. 'WINDOW',
  763. 'WITH',
  764. 'WITHIN',
  765. 'WITHOUT',
  766. 'WORK',
  767. 'WRAPPER',
  768. 'WRITE',
  769. 'XML',
  770. 'XMLAGG',
  771. 'XMLATTRIBUTES',
  772. 'XMLBINARY',
  773. 'XMLCAST',
  774. 'XMLCOMMENT',
  775. 'XMLCONCAT',
  776. 'XMLDECLARATION',
  777. 'XMLDOCUMENT',
  778. 'XMLELEMENT',
  779. 'XMLEXISTS',
  780. 'XMLFOREST',
  781. 'XMLITERATE',
  782. 'XMLNAMESPACES',
  783. 'XMLPARSE',
  784. 'XMLPI',
  785. 'XMLQUERY',
  786. 'XMLROOT',
  787. 'XMLSCHEMA',
  788. 'XMLSERIALIZE',
  789. 'XMLTABLE',
  790. 'XMLTEXT',
  791. 'XMLVALIDATE',
  792. 'YEAR',
  793. 'YES',
  794. 'ZONE'
  795. ],
  796. operators: [
  797. 'AND',
  798. 'BETWEEN',
  799. 'IN',
  800. 'LIKE',
  801. 'NOT',
  802. 'OR',
  803. 'IS',
  804. 'NULL',
  805. 'INTERSECT',
  806. 'UNION',
  807. 'INNER',
  808. 'JOIN',
  809. 'LEFT',
  810. 'OUTER',
  811. 'RIGHT'
  812. ],
  813. builtinFunctions: [
  814. 'abbrev',
  815. 'abs',
  816. 'acos',
  817. 'acosd',
  818. 'age',
  819. 'any',
  820. 'area',
  821. 'array_agg',
  822. 'array_append',
  823. 'array_cat',
  824. 'array_dims',
  825. 'array_fill',
  826. 'array_length',
  827. 'array_lower',
  828. 'array_ndims',
  829. 'array_position',
  830. 'array_positions',
  831. 'array_prepend',
  832. 'array_remove',
  833. 'array_replace',
  834. 'array_to_json',
  835. 'array_to_string',
  836. 'array_to_tsvector',
  837. 'array_upper',
  838. 'ascii',
  839. 'asin',
  840. 'asind',
  841. 'atan',
  842. 'atan2',
  843. 'atan2d',
  844. 'atand',
  845. 'avg',
  846. 'bit',
  847. 'bit_and',
  848. 'bit_length',
  849. 'bit_or',
  850. 'bool_and',
  851. 'bool_or',
  852. 'bound_box',
  853. 'box',
  854. 'brin_summarize_new_values',
  855. 'broadcast',
  856. 'btrim',
  857. 'cardinality',
  858. 'cbrt',
  859. 'ceil',
  860. 'ceiling',
  861. 'center',
  862. 'char_length',
  863. 'character_length',
  864. 'chr',
  865. 'circle',
  866. 'clock_timestamp',
  867. 'coalesce',
  868. 'col_description',
  869. 'concat',
  870. 'concat_ws',
  871. 'convert',
  872. 'convert_from',
  873. 'convert_to',
  874. 'corr',
  875. 'cos',
  876. 'cosd',
  877. 'cot',
  878. 'cotd',
  879. 'count',
  880. 'covar_pop',
  881. 'covar_samp',
  882. 'cume_dist',
  883. 'current_catalog',
  884. 'current_database',
  885. 'current_date',
  886. 'current_query',
  887. 'current_role',
  888. 'current_schema',
  889. 'current_schemas',
  890. 'current_setting',
  891. 'current_time',
  892. 'current_timestamp',
  893. 'current_user',
  894. 'currval',
  895. 'cursor_to_xml',
  896. 'date_part',
  897. 'date_trunc',
  898. 'decode',
  899. 'degrees',
  900. 'dense_rank',
  901. 'diameter',
  902. 'div',
  903. 'encode',
  904. 'enum_first',
  905. 'enum_last',
  906. 'enum_range',
  907. 'every',
  908. 'exp',
  909. 'extract',
  910. 'family',
  911. 'first_value',
  912. 'floor',
  913. 'format',
  914. 'format_type',
  915. 'generate_series',
  916. 'generate_subscripts',
  917. 'get_bit',
  918. 'get_byte',
  919. 'get_current_ts_config',
  920. 'gin_clean_pending_list',
  921. 'greatest',
  922. 'grouping',
  923. 'has_any_column_privilege',
  924. 'has_column_privilege',
  925. 'has_database_privilege',
  926. 'has_foreign_data_wrapper_privilege',
  927. 'has_function_privilege',
  928. 'has_language_privilege',
  929. 'has_schema_privilege',
  930. 'has_sequence_privilege',
  931. 'has_server_privilege',
  932. 'has_table_privilege',
  933. 'has_tablespace_privilege',
  934. 'has_type_privilege',
  935. 'height',
  936. 'host',
  937. 'hostmask',
  938. 'inet_client_addr',
  939. 'inet_client_port',
  940. 'inet_merge',
  941. 'inet_same_family',
  942. 'inet_server_addr',
  943. 'inet_server_port',
  944. 'initcap',
  945. 'isclosed',
  946. 'isempty',
  947. 'isfinite',
  948. 'isopen',
  949. 'json_agg',
  950. 'json_object',
  951. 'json_object_agg',
  952. 'json_populate_record',
  953. 'json_populate_recordset',
  954. 'json_to_record',
  955. 'json_to_recordset',
  956. 'jsonb_agg',
  957. 'jsonb_object_agg',
  958. 'justify_days',
  959. 'justify_hours',
  960. 'justify_interval',
  961. 'lag',
  962. 'last_value',
  963. 'lastval',
  964. 'lead',
  965. 'least',
  966. 'left',
  967. 'length',
  968. 'line',
  969. 'ln',
  970. 'localtime',
  971. 'localtimestamp',
  972. 'log',
  973. 'lower',
  974. 'lower_inc',
  975. 'lower_inf',
  976. 'lpad',
  977. 'lseg',
  978. 'ltrim',
  979. 'make_date',
  980. 'make_interval',
  981. 'make_time',
  982. 'make_timestamp',
  983. 'make_timestamptz',
  984. 'masklen',
  985. 'max',
  986. 'md5',
  987. 'min',
  988. 'mod',
  989. 'mode',
  990. 'netmask',
  991. 'network',
  992. 'nextval',
  993. 'now',
  994. 'npoints',
  995. 'nth_value',
  996. 'ntile',
  997. 'nullif',
  998. 'num_nonnulls',
  999. 'num_nulls',
  1000. 'numnode',
  1001. 'obj_description',
  1002. 'octet_length',
  1003. 'overlay',
  1004. 'parse_ident',
  1005. 'path',
  1006. 'pclose',
  1007. 'percent_rank',
  1008. 'percentile_cont',
  1009. 'percentile_disc',
  1010. 'pg_advisory_lock',
  1011. 'pg_advisory_lock_shared',
  1012. 'pg_advisory_unlock',
  1013. 'pg_advisory_unlock_all',
  1014. 'pg_advisory_unlock_shared',
  1015. 'pg_advisory_xact_lock',
  1016. 'pg_advisory_xact_lock_shared',
  1017. 'pg_backend_pid',
  1018. 'pg_backup_start_time',
  1019. 'pg_blocking_pids',
  1020. 'pg_cancel_backend',
  1021. 'pg_client_encoding',
  1022. 'pg_collation_is_visible',
  1023. 'pg_column_size',
  1024. 'pg_conf_load_time',
  1025. 'pg_control_checkpoint',
  1026. 'pg_control_init',
  1027. 'pg_control_recovery',
  1028. 'pg_control_system',
  1029. 'pg_conversion_is_visible',
  1030. 'pg_create_logical_replication_slot',
  1031. 'pg_create_physical_replication_slot',
  1032. 'pg_create_restore_point',
  1033. 'pg_current_xlog_flush_location',
  1034. 'pg_current_xlog_insert_location',
  1035. 'pg_current_xlog_location',
  1036. 'pg_database_size',
  1037. 'pg_describe_object',
  1038. 'pg_drop_replication_slot',
  1039. 'pg_export_snapshot',
  1040. 'pg_filenode_relation',
  1041. 'pg_function_is_visible',
  1042. 'pg_get_constraintdef',
  1043. 'pg_get_expr',
  1044. 'pg_get_function_arguments',
  1045. 'pg_get_function_identity_arguments',
  1046. 'pg_get_function_result',
  1047. 'pg_get_functiondef',
  1048. 'pg_get_indexdef',
  1049. 'pg_get_keywords',
  1050. 'pg_get_object_address',
  1051. 'pg_get_owned_sequence',
  1052. 'pg_get_ruledef',
  1053. 'pg_get_serial_sequence',
  1054. 'pg_get_triggerdef',
  1055. 'pg_get_userbyid',
  1056. 'pg_get_viewdef',
  1057. 'pg_has_role',
  1058. 'pg_identify_object',
  1059. 'pg_identify_object_as_address',
  1060. 'pg_index_column_has_property',
  1061. 'pg_index_has_property',
  1062. 'pg_indexam_has_property',
  1063. 'pg_indexes_size',
  1064. 'pg_is_in_backup',
  1065. 'pg_is_in_recovery',
  1066. 'pg_is_other_temp_schema',
  1067. 'pg_is_xlog_replay_paused',
  1068. 'pg_last_committed_xact',
  1069. 'pg_last_xact_replay_timestamp',
  1070. 'pg_last_xlog_receive_location',
  1071. 'pg_last_xlog_replay_location',
  1072. 'pg_listening_channels',
  1073. 'pg_logical_emit_message',
  1074. 'pg_logical_slot_get_binary_changes',
  1075. 'pg_logical_slot_get_changes',
  1076. 'pg_logical_slot_peek_binary_changes',
  1077. 'pg_logical_slot_peek_changes',
  1078. 'pg_ls_dir',
  1079. 'pg_my_temp_schema',
  1080. 'pg_notification_queue_usage',
  1081. 'pg_opclass_is_visible',
  1082. 'pg_operator_is_visible',
  1083. 'pg_opfamily_is_visible',
  1084. 'pg_options_to_table',
  1085. 'pg_postmaster_start_time',
  1086. 'pg_read_binary_file',
  1087. 'pg_read_file',
  1088. 'pg_relation_filenode',
  1089. 'pg_relation_filepath',
  1090. 'pg_relation_size',
  1091. 'pg_reload_conf',
  1092. 'pg_replication_origin_create',
  1093. 'pg_replication_origin_drop',
  1094. 'pg_replication_origin_oid',
  1095. 'pg_replication_origin_progress',
  1096. 'pg_replication_origin_session_is_setup',
  1097. 'pg_replication_origin_session_progress',
  1098. 'pg_replication_origin_session_reset',
  1099. 'pg_replication_origin_session_setup',
  1100. 'pg_replication_origin_xact_reset',
  1101. 'pg_replication_origin_xact_setup',
  1102. 'pg_rotate_logfile',
  1103. 'pg_size_bytes',
  1104. 'pg_size_pretty',
  1105. 'pg_sleep',
  1106. 'pg_sleep_for',
  1107. 'pg_sleep_until',
  1108. 'pg_start_backup',
  1109. 'pg_stat_file',
  1110. 'pg_stop_backup',
  1111. 'pg_switch_xlog',
  1112. 'pg_table_is_visible',
  1113. 'pg_table_size',
  1114. 'pg_tablespace_databases',
  1115. 'pg_tablespace_location',
  1116. 'pg_tablespace_size',
  1117. 'pg_terminate_backend',
  1118. 'pg_total_relation_size',
  1119. 'pg_trigger_depth',
  1120. 'pg_try_advisory_lock',
  1121. 'pg_try_advisory_lock_shared',
  1122. 'pg_try_advisory_xact_lock',
  1123. 'pg_try_advisory_xact_lock_shared',
  1124. 'pg_ts_config_is_visible',
  1125. 'pg_ts_dict_is_visible',
  1126. 'pg_ts_parser_is_visible',
  1127. 'pg_ts_template_is_visible',
  1128. 'pg_type_is_visible',
  1129. 'pg_typeof',
  1130. 'pg_xact_commit_timestamp',
  1131. 'pg_xlog_location_diff',
  1132. 'pg_xlog_replay_pause',
  1133. 'pg_xlog_replay_resume',
  1134. 'pg_xlogfile_name',
  1135. 'pg_xlogfile_name_offset',
  1136. 'phraseto_tsquery',
  1137. 'pi',
  1138. 'plainto_tsquery',
  1139. 'point',
  1140. 'polygon',
  1141. 'popen',
  1142. 'position',
  1143. 'power',
  1144. 'pqserverversion',
  1145. 'query_to_xml',
  1146. 'querytree',
  1147. 'quote_ident',
  1148. 'quote_literal',
  1149. 'quote_nullable',
  1150. 'radians',
  1151. 'radius',
  1152. 'random',
  1153. 'range_merge',
  1154. 'rank',
  1155. 'regexp_matches',
  1156. 'regexp_replace',
  1157. 'regexp_split_to_array',
  1158. 'regexp_split_to_table',
  1159. 'regr_avgx',
  1160. 'regr_avgy',
  1161. 'regr_count',
  1162. 'regr_intercept',
  1163. 'regr_r2',
  1164. 'regr_slope',
  1165. 'regr_sxx',
  1166. 'regr_sxy',
  1167. 'regr_syy',
  1168. 'repeat',
  1169. 'replace',
  1170. 'reverse',
  1171. 'right',
  1172. 'round',
  1173. 'row_number',
  1174. 'row_security_active',
  1175. 'row_to_json',
  1176. 'rpad',
  1177. 'rtrim',
  1178. 'scale',
  1179. 'session_user',
  1180. 'set_bit',
  1181. 'set_byte',
  1182. 'set_config',
  1183. 'set_masklen',
  1184. 'setseed',
  1185. 'setval',
  1186. 'setweight',
  1187. 'shobj_description',
  1188. 'sign',
  1189. 'sin',
  1190. 'sind',
  1191. 'split_part',
  1192. 'sprintf',
  1193. 'sqrt',
  1194. 'statement_timestamp',
  1195. 'stddev',
  1196. 'stddev_pop',
  1197. 'stddev_samp',
  1198. 'string_agg',
  1199. 'string_to_array',
  1200. 'strip',
  1201. 'strpos',
  1202. 'substr',
  1203. 'substring',
  1204. 'sum',
  1205. 'table_to_xml',
  1206. 'table_to_xml_and_xmlschema',
  1207. 'tan',
  1208. 'tand',
  1209. 'text',
  1210. 'timeofday',
  1211. 'timezone',
  1212. 'to_ascii',
  1213. 'to_char',
  1214. 'to_date',
  1215. 'to_hex',
  1216. 'to_json',
  1217. 'to_number',
  1218. 'to_regclass',
  1219. 'to_regnamespace',
  1220. 'to_regoper',
  1221. 'to_regoperator',
  1222. 'to_regproc',
  1223. 'to_regprocedure',
  1224. 'to_regrole',
  1225. 'to_regtype',
  1226. 'to_timestamp',
  1227. 'to_tsquery',
  1228. 'to_tsvector',
  1229. 'transaction_timestamp',
  1230. 'translate',
  1231. 'trim',
  1232. 'trunc',
  1233. 'ts_debug',
  1234. 'ts_delete',
  1235. 'ts_filter',
  1236. 'ts_headline',
  1237. 'ts_lexize',
  1238. 'ts_parse',
  1239. 'ts_rank',
  1240. 'ts_rank_cd',
  1241. 'ts_rewrite',
  1242. 'ts_stat',
  1243. 'ts_token_type',
  1244. 'tsquery_phrase',
  1245. 'tsvector_to_array',
  1246. 'tsvector_update_trigger',
  1247. 'tsvector_update_trigger_column',
  1248. 'txid_current',
  1249. 'txid_current_snapshot',
  1250. 'txid_snapshot_xip',
  1251. 'txid_snapshot_xmax',
  1252. 'txid_snapshot_xmin',
  1253. 'txid_visible_in_snapshot',
  1254. 'unnest',
  1255. 'upper',
  1256. 'upper_inc',
  1257. 'upper_inf',
  1258. 'user',
  1259. 'var_pop',
  1260. 'var_samp',
  1261. 'variance',
  1262. 'version',
  1263. 'width',
  1264. 'width_bucket',
  1265. 'xml_is_well_formed',
  1266. 'xml_is_well_formed_content',
  1267. 'xml_is_well_formed_document',
  1268. 'xmlagg',
  1269. 'xmlcomment',
  1270. 'xmlconcat',
  1271. 'xmlelement',
  1272. 'xmlexists',
  1273. 'xmlforest',
  1274. 'xmlparse',
  1275. 'xmlpi',
  1276. 'xmlroot',
  1277. 'xmlserialize',
  1278. 'xpath',
  1279. 'xpath_exists'
  1280. ],
  1281. builtinVariables: [
  1282. // NOT SUPPORTED
  1283. ],
  1284. pseudoColumns: [
  1285. // NOT SUPPORTED
  1286. ],
  1287. tokenizer: {
  1288. root: [
  1289. { include: '@comments' },
  1290. { include: '@whitespace' },
  1291. { include: '@pseudoColumns' },
  1292. { include: '@numbers' },
  1293. { include: '@strings' },
  1294. { include: '@complexIdentifiers' },
  1295. { include: '@scopes' },
  1296. [/[;,.]/, 'delimiter'],
  1297. [/[()]/, '@brackets'],
  1298. [
  1299. /[\w@#$]+/,
  1300. {
  1301. cases: {
  1302. '@keywords': 'keyword',
  1303. '@operators': 'operator',
  1304. '@builtinVariables': 'predefined',
  1305. '@builtinFunctions': 'predefined',
  1306. '@default': 'identifier'
  1307. }
  1308. }
  1309. ],
  1310. [/[<>=!%&+\-*/|~^]/, 'operator']
  1311. ],
  1312. whitespace: [[/\s+/, 'white']],
  1313. comments: [
  1314. [/--+.*/, 'comment'],
  1315. [/\/\*/, { token: 'comment.quote', next: '@comment' }]
  1316. ],
  1317. comment: [
  1318. [/[^*/]+/, 'comment'],
  1319. // Not supporting nested comments, as nested comments seem to not be standard?
  1320. // i.e. http://stackoverflow.com/questions/728172/are-there-multiline-comment-delimiters-in-sql-that-are-vendor-agnostic
  1321. // [/\/\*/, { token: 'comment.quote', next: '@push' }], // nested comment not allowed :-(
  1322. [/\*\//, { token: 'comment.quote', next: '@pop' }],
  1323. [/./, 'comment']
  1324. ],
  1325. pseudoColumns: [
  1326. [
  1327. /[$][A-Za-z_][\w@#$]*/,
  1328. {
  1329. cases: {
  1330. '@pseudoColumns': 'predefined',
  1331. '@default': 'identifier'
  1332. }
  1333. }
  1334. ]
  1335. ],
  1336. numbers: [
  1337. [/0[xX][0-9a-fA-F]*/, 'number'],
  1338. [/[$][+-]*\d*(\.\d*)?/, 'number'],
  1339. [/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/, 'number']
  1340. ],
  1341. strings: [[/'/, { token: 'string', next: '@string' }]],
  1342. string: [
  1343. [/[^']+/, 'string'],
  1344. [/''/, 'string'],
  1345. [/'/, { token: 'string', next: '@pop' }]
  1346. ],
  1347. complexIdentifiers: [[/"/, { token: 'identifier.quote', next: '@quotedIdentifier' }]],
  1348. quotedIdentifier: [
  1349. [/[^"]+/, 'identifier'],
  1350. [/""/, 'identifier'],
  1351. [/"/, { token: 'identifier.quote', next: '@pop' }]
  1352. ],
  1353. scopes: [
  1354. // NOT SUPPORTED
  1355. ]
  1356. }
  1357. };
  1358. });