securityos/node_modules/monaco-editor/esm/vs/basic-languages/redshift/redshift.js

810 lines
16 KiB
JavaScript
Raw Normal View History

2024-09-06 15:32:35 +00:00
/*!-----------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Version: 0.36.1(6c56744c3419458f0dd48864520b759d1a3a1ca8)
* Released under the MIT license
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
*-----------------------------------------------------------------------------*/
// src/basic-languages/redshift/redshift.ts
var conf = {
comments: {
lineComment: "--",
blockComment: ["/*", "*/"]
},
brackets: [
["{", "}"],
["[", "]"],
["(", ")"]
],
autoClosingPairs: [
{ open: "{", close: "}" },
{ open: "[", close: "]" },
{ open: "(", close: ")" },
{ open: '"', close: '"' },
{ open: "'", close: "'" }
],
surroundingPairs: [
{ open: "{", close: "}" },
{ open: "[", close: "]" },
{ open: "(", close: ")" },
{ open: '"', close: '"' },
{ open: "'", close: "'" }
]
};
var language = {
defaultToken: "",
tokenPostfix: ".sql",
ignoreCase: true,
brackets: [
{ open: "[", close: "]", token: "delimiter.square" },
{ open: "(", close: ")", token: "delimiter.parenthesis" }
],
keywords: [
"AES128",
"AES256",
"ALL",
"ALLOWOVERWRITE",
"ANALYSE",
"ANALYZE",
"AND",
"ANY",
"ARRAY",
"AS",
"ASC",
"AUTHORIZATION",
"AZ64",
"BACKUP",
"BETWEEN",
"BINARY",
"BLANKSASNULL",
"BOTH",
"BYTEDICT",
"BZIP2",
"CASE",
"CAST",
"CHECK",
"COLLATE",
"COLUMN",
"CONSTRAINT",
"CREATE",
"CREDENTIALS",
"CROSS",
"CURRENT_DATE",
"CURRENT_TIME",
"CURRENT_TIMESTAMP",
"CURRENT_USER",
"CURRENT_USER_ID",
"DEFAULT",
"DEFERRABLE",
"DEFLATE",
"DEFRAG",
"DELTA",
"DELTA32K",
"DESC",
"DISABLE",
"DISTINCT",
"DO",
"ELSE",
"EMPTYASNULL",
"ENABLE",
"ENCODE",
"ENCRYPT",
"ENCRYPTION",
"END",
"EXCEPT",
"EXPLICIT",
"FALSE",
"FOR",
"FOREIGN",
"FREEZE",
"FROM",
"FULL",
"GLOBALDICT256",
"GLOBALDICT64K",
"GRANT",
"GROUP",
"GZIP",
"HAVING",
"IDENTITY",
"IGNORE",
"ILIKE",
"IN",
"INITIALLY",
"INNER",
"INTERSECT",
"INTO",
"IS",
"ISNULL",
"JOIN",
"LANGUAGE",
"LEADING",
"LEFT",
"LIKE",
"LIMIT",
"LOCALTIME",
"LOCALTIMESTAMP",
"LUN",
"LUNS",
"LZO",
"LZOP",
"MINUS",
"MOSTLY16",
"MOSTLY32",
"MOSTLY8",
"NATURAL",
"NEW",
"NOT",
"NOTNULL",
"NULL",
"NULLS",
"OFF",
"OFFLINE",
"OFFSET",
"OID",
"OLD",
"ON",
"ONLY",
"OPEN",
"OR",
"ORDER",
"OUTER",
"OVERLAPS",
"PARALLEL",
"PARTITION",
"PERCENT",
"PERMISSIONS",
"PLACING",
"PRIMARY",
"RAW",
"READRATIO",
"RECOVER",
"REFERENCES",
"RESPECT",
"REJECTLOG",
"RESORT",
"RESTORE",
"RIGHT",
"SELECT",
"SESSION_USER",
"SIMILAR",
"SNAPSHOT",
"SOME",
"SYSDATE",
"SYSTEM",
"TABLE",
"TAG",
"TDES",
"TEXT255",
"TEXT32K",
"THEN",
"TIMESTAMP",
"TO",
"TOP",
"TRAILING",
"TRUE",
"TRUNCATECOLUMNS",
"UNION",
"UNIQUE",
"USER",
"USING",
"VERBOSE",
"WALLET",
"WHEN",
"WHERE",
"WITH",
"WITHOUT"
],
operators: [
"AND",
"BETWEEN",
"IN",
"LIKE",
"NOT",
"OR",
"IS",
"NULL",
"INTERSECT",
"UNION",
"INNER",
"JOIN",
"LEFT",
"OUTER",
"RIGHT"
],
builtinFunctions: [
"current_schema",
"current_schemas",
"has_database_privilege",
"has_schema_privilege",
"has_table_privilege",
"age",
"current_time",
"current_timestamp",
"localtime",
"isfinite",
"now",
"ascii",
"get_bit",
"get_byte",
"set_bit",
"set_byte",
"to_ascii",
"approximate percentile_disc",
"avg",
"count",
"listagg",
"max",
"median",
"min",
"percentile_cont",
"stddev_samp",
"stddev_pop",
"sum",
"var_samp",
"var_pop",
"bit_and",
"bit_or",
"bool_and",
"bool_or",
"cume_dist",
"first_value",
"lag",
"last_value",
"lead",
"nth_value",
"ratio_to_report",
"dense_rank",
"ntile",
"percent_rank",
"rank",
"row_number",
"case",
"coalesce",
"decode",
"greatest",
"least",
"nvl",
"nvl2",
"nullif",
"add_months",
"at time zone",
"convert_timezone",
"current_date",
"date_cmp",
"date_cmp_timestamp",
"date_cmp_timestamptz",
"date_part_year",
"dateadd",
"datediff",
"date_part",
"date_trunc",
"extract",
"getdate",
"interval_cmp",
"last_day",
"months_between",
"next_day",
"sysdate",
"timeofday",
"timestamp_cmp",
"timestamp_cmp_date",
"timestamp_cmp_timestamptz",
"timestamptz_cmp",
"timestamptz_cmp_date",
"timestamptz_cmp_timestamp",
"timezone",
"to_timestamp",
"trunc",
"abs",
"acos",
"asin",
"atan",
"atan2",
"cbrt",
"ceil",
"ceiling",
"checksum",
"cos",
"cot",
"degrees",
"dexp",
"dlog1",
"dlog10",
"exp",
"floor",
"ln",
"log",
"mod",
"pi",
"power",
"radians",
"random",
"round",
"sin",
"sign",
"sqrt",
"tan",
"to_hex",
"bpcharcmp",
"btrim",
"bttext_pattern_cmp",
"char_length",
"character_length",
"charindex",
"chr",
"concat",
"crc32",
"func_sha1",
"initcap",
"left and rights",
"len",
"length",
"lower",
"lpad and rpads",
"ltrim",
"md5",
"octet_length",
"position",
"quote_ident",
"quote_literal",
"regexp_count",
"regexp_instr",
"regexp_replace",
"regexp_substr",
"repeat",
"replace",
"replicate",
"reverse",
"rtrim",
"split_part",
"strpos",
"strtol",
"substring",
"textlen",
"translate",
"trim",
"upper",
"cast",
"convert",
"to_char",
"to_date",
"to_number",
"json_array_length",
"json_extract_array_element_text",
"json_extract_path_text",
"current_setting",
"pg_cancel_backend",
"pg_terminate_backend",
"set_config",
"current_database",
"current_user",
"current_user_id",
"pg_backend_pid",
"pg_last_copy_count",
"pg_last_copy_id",
"pg_last_query_id",
"pg_last_unload_count",
"session_user",
"slice_num",
"user",
"version",
"abbrev",
"acosd",
"any",
"area",
"array_agg",
"array_append",
"array_cat",
"array_dims",
"array_fill",
"array_length",
"array_lower",
"array_ndims",
"array_position",
"array_positions",
"array_prepend",
"array_remove",
"array_replace",
"array_to_json",
"array_to_string",
"array_to_tsvector",
"array_upper",
"asind",
"atan2d",
"atand",
"bit",
"bit_length",
"bound_box",
"box",
"brin_summarize_new_values",
"broadcast",
"cardinality",
"center",
"circle",
"clock_timestamp",
"col_description",
"concat_ws",
"convert_from",
"convert_to",
"corr",
"cosd",
"cotd",
"covar_pop",
"covar_samp",
"current_catalog",
"current_query",
"current_role",
"currval",
"cursor_to_xml",
"diameter",
"div",
"encode",
"enum_first",
"enum_last",
"enum_range",
"every",
"family",
"format",
"format_type",
"generate_series",
"generate_subscripts",
"get_current_ts_config",
"gin_clean_pending_list",
"grouping",
"has_any_column_privilege",
"has_column_privilege",
"has_foreign_data_wrapper_privilege",
"has_function_privilege",
"has_language_privilege",
"has_sequence_privilege",
"has_server_privilege",
"has_tablespace_privilege",
"has_type_privilege",
"height",
"host",
"hostmask",
"inet_client_addr",
"inet_client_port",
"inet_merge",
"inet_same_family",
"inet_server_addr",
"inet_server_port",
"isclosed",
"isempty",
"isopen",
"json_agg",
"json_object",
"json_object_agg",
"json_populate_record",
"json_populate_recordset",
"json_to_record",
"json_to_recordset",
"jsonb_agg",
"jsonb_object_agg",
"justify_days",
"justify_hours",
"justify_interval",
"lastval",
"left",
"line",
"localtimestamp",
"lower_inc",
"lower_inf",
"lpad",
"lseg",
"make_date",
"make_interval",
"make_time",
"make_timestamp",
"make_timestamptz",
"masklen",
"mode",
"netmask",
"network",
"nextval",
"npoints",
"num_nonnulls",
"num_nulls",
"numnode",
"obj_description",
"overlay",
"parse_ident",
"path",
"pclose",
"percentile_disc",
"pg_advisory_lock",
"pg_advisory_lock_shared",
"pg_advisory_unlock",
"pg_advisory_unlock_all",
"pg_advisory_unlock_shared",
"pg_advisory_xact_lock",
"pg_advisory_xact_lock_shared",
"pg_backup_start_time",
"pg_blocking_pids",
"pg_client_encoding",
"pg_collation_is_visible",
"pg_column_size",
"pg_conf_load_time",
"pg_control_checkpoint",
"pg_control_init",
"pg_control_recovery",
"pg_control_system",
"pg_conversion_is_visible",
"pg_create_logical_replication_slot",
"pg_create_physical_replication_slot",
"pg_create_restore_point",
"pg_current_xlog_flush_location",
"pg_current_xlog_insert_location",
"pg_current_xlog_location",
"pg_database_size",
"pg_describe_object",
"pg_drop_replication_slot",
"pg_export_snapshot",
"pg_filenode_relation",
"pg_function_is_visible",
"pg_get_constraintdef",
"pg_get_expr",
"pg_get_function_arguments",
"pg_get_function_identity_arguments",
"pg_get_function_result",
"pg_get_functiondef",
"pg_get_indexdef",
"pg_get_keywords",
"pg_get_object_address",
"pg_get_owned_sequence",
"pg_get_ruledef",
"pg_get_serial_sequence",
"pg_get_triggerdef",
"pg_get_userbyid",
"pg_get_viewdef",
"pg_has_role",
"pg_identify_object",
"pg_identify_object_as_address",
"pg_index_column_has_property",
"pg_index_has_property",
"pg_indexam_has_property",
"pg_indexes_size",
"pg_is_in_backup",
"pg_is_in_recovery",
"pg_is_other_temp_schema",
"pg_is_xlog_replay_paused",
"pg_last_committed_xact",
"pg_last_xact_replay_timestamp",
"pg_last_xlog_receive_location",
"pg_last_xlog_replay_location",
"pg_listening_channels",
"pg_logical_emit_message",
"pg_logical_slot_get_binary_changes",
"pg_logical_slot_get_changes",
"pg_logical_slot_peek_binary_changes",
"pg_logical_slot_peek_changes",
"pg_ls_dir",
"pg_my_temp_schema",
"pg_notification_queue_usage",
"pg_opclass_is_visible",
"pg_operator_is_visible",
"pg_opfamily_is_visible",
"pg_options_to_table",
"pg_postmaster_start_time",
"pg_read_binary_file",
"pg_read_file",
"pg_relation_filenode",
"pg_relation_filepath",
"pg_relation_size",
"pg_reload_conf",
"pg_replication_origin_create",
"pg_replication_origin_drop",
"pg_replication_origin_oid",
"pg_replication_origin_progress",
"pg_replication_origin_session_is_setup",
"pg_replication_origin_session_progress",
"pg_replication_origin_session_reset",
"pg_replication_origin_session_setup",
"pg_replication_origin_xact_reset",
"pg_replication_origin_xact_setup",
"pg_rotate_logfile",
"pg_size_bytes",
"pg_size_pretty",
"pg_sleep",
"pg_sleep_for",
"pg_sleep_until",
"pg_start_backup",
"pg_stat_file",
"pg_stop_backup",
"pg_switch_xlog",
"pg_table_is_visible",
"pg_table_size",
"pg_tablespace_databases",
"pg_tablespace_location",
"pg_tablespace_size",
"pg_total_relation_size",
"pg_trigger_depth",
"pg_try_advisory_lock",
"pg_try_advisory_lock_shared",
"pg_try_advisory_xact_lock",
"pg_try_advisory_xact_lock_shared",
"pg_ts_config_is_visible",
"pg_ts_dict_is_visible",
"pg_ts_parser_is_visible",
"pg_ts_template_is_visible",
"pg_type_is_visible",
"pg_typeof",
"pg_xact_commit_timestamp",
"pg_xlog_location_diff",
"pg_xlog_replay_pause",
"pg_xlog_replay_resume",
"pg_xlogfile_name",
"pg_xlogfile_name_offset",
"phraseto_tsquery",
"plainto_tsquery",
"point",
"polygon",
"popen",
"pqserverversion",
"query_to_xml",
"querytree",
"quote_nullable",
"radius",
"range_merge",
"regexp_matches",
"regexp_split_to_array",
"regexp_split_to_table",
"regr_avgx",
"regr_avgy",
"regr_count",
"regr_intercept",
"regr_r2",
"regr_slope",
"regr_sxx",
"regr_sxy",
"regr_syy",
"right",
"row_security_active",
"row_to_json",
"rpad",
"scale",
"set_masklen",
"setseed",
"setval",
"setweight",
"shobj_description",
"sind",
"sprintf",
"statement_timestamp",
"stddev",
"string_agg",
"string_to_array",
"strip",
"substr",
"table_to_xml",
"table_to_xml_and_xmlschema",
"tand",
"text",
"to_json",
"to_regclass",
"to_regnamespace",
"to_regoper",
"to_regoperator",
"to_regproc",
"to_regprocedure",
"to_regrole",
"to_regtype",
"to_tsquery",
"to_tsvector",
"transaction_timestamp",
"ts_debug",
"ts_delete",
"ts_filter",
"ts_headline",
"ts_lexize",
"ts_parse",
"ts_rank",
"ts_rank_cd",
"ts_rewrite",
"ts_stat",
"ts_token_type",
"tsquery_phrase",
"tsvector_to_array",
"tsvector_update_trigger",
"tsvector_update_trigger_column",
"txid_current",
"txid_current_snapshot",
"txid_snapshot_xip",
"txid_snapshot_xmax",
"txid_snapshot_xmin",
"txid_visible_in_snapshot",
"unnest",
"upper_inc",
"upper_inf",
"variance",
"width",
"width_bucket",
"xml_is_well_formed",
"xml_is_well_formed_content",
"xml_is_well_formed_document",
"xmlagg",
"xmlcomment",
"xmlconcat",
"xmlelement",
"xmlexists",
"xmlforest",
"xmlparse",
"xmlpi",
"xmlroot",
"xmlserialize",
"xpath",
"xpath_exists"
],
builtinVariables: [],
pseudoColumns: [],
tokenizer: {
root: [
{ include: "@comments" },
{ include: "@whitespace" },
{ include: "@pseudoColumns" },
{ include: "@numbers" },
{ include: "@strings" },
{ include: "@complexIdentifiers" },
{ include: "@scopes" },
[/[;,.]/, "delimiter"],
[/[()]/, "@brackets"],
[
/[\w@#$]+/,
{
cases: {
"@keywords": "keyword",
"@operators": "operator",
"@builtinVariables": "predefined",
"@builtinFunctions": "predefined",
"@default": "identifier"
}
}
],
[/[<>=!%&+\-*/|~^]/, "operator"]
],
whitespace: [[/\s+/, "white"]],
comments: [
[/--+.*/, "comment"],
[/\/\*/, { token: "comment.quote", next: "@comment" }]
],
comment: [
[/[^*/]+/, "comment"],
[/\*\//, { token: "comment.quote", next: "@pop" }],
[/./, "comment"]
],
pseudoColumns: [
[
/[$][A-Za-z_][\w@#$]*/,
{
cases: {
"@pseudoColumns": "predefined",
"@default": "identifier"
}
}
]
],
numbers: [
[/0[xX][0-9a-fA-F]*/, "number"],
[/[$][+-]*\d*(\.\d*)?/, "number"],
[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/, "number"]
],
strings: [[/'/, { token: "string", next: "@string" }]],
string: [
[/[^']+/, "string"],
[/''/, "string"],
[/'/, { token: "string", next: "@pop" }]
],
complexIdentifiers: [[/"/, { token: "identifier.quote", next: "@quotedIdentifier" }]],
quotedIdentifier: [
[/[^"]+/, "identifier"],
[/""/, "identifier"],
[/"/, { token: "identifier.quote", next: "@pop" }]
],
scopes: []
}
};
export {
conf,
language
};