n1Ql top-level property

Language n1Ql
final

Implementation

final n1Ql = Language(
  id: "n1ql",
  refs: {},
  name: "N1QL",
  case_insensitive: true,
  contains: [
    Mode(
      beginKeywords:
          "build create index delete drop explain infer|10 insert merge prepare select update upsert|10",
      end: ";",
      keywords: {
        "keyword": [
          "all",
          "alter",
          "analyze",
          "and",
          "any",
          "array",
          "as",
          "asc",
          "begin",
          "between",
          "binary",
          "boolean",
          "break",
          "bucket",
          "build",
          "by",
          "call",
          "case",
          "cast",
          "cluster",
          "collate",
          "collection",
          "commit",
          "connect",
          "continue",
          "correlate",
          "cover",
          "create",
          "database",
          "dataset",
          "datastore",
          "declare",
          "decrement",
          "delete",
          "derived",
          "desc",
          "describe",
          "distinct",
          "do",
          "drop",
          "each",
          "element",
          "else",
          "end",
          "every",
          "except",
          "exclude",
          "execute",
          "exists",
          "explain",
          "fetch",
          "first",
          "flatten",
          "for",
          "force",
          "from",
          "function",
          "grant",
          "group",
          "gsi",
          "having",
          "if",
          "ignore",
          "ilike",
          "in",
          "include",
          "increment",
          "index",
          "infer",
          "inline",
          "inner",
          "insert",
          "intersect",
          "into",
          "is",
          "join",
          "key",
          "keys",
          "keyspace",
          "known",
          "last",
          "left",
          "let",
          "letting",
          "like",
          "limit",
          "lsm",
          "map",
          "mapping",
          "matched",
          "materialized",
          "merge",
          "minus",
          "namespace",
          "nest",
          "not",
          "number",
          "object",
          "offset",
          "on",
          "option",
          "or",
          "order",
          "outer",
          "over",
          "parse",
          "partition",
          "password",
          "path",
          "pool",
          "prepare",
          "primary",
          "private",
          "privilege",
          "procedure",
          "public",
          "raw",
          "realm",
          "reduce",
          "rename",
          "return",
          "returning",
          "revoke",
          "right",
          "role",
          "rollback",
          "satisfies",
          "schema",
          "select",
          "self",
          "semi",
          "set",
          "show",
          "some",
          "start",
          "statistics",
          "string",
          "system",
          "then",
          "to",
          "transaction",
          "trigger",
          "truncate",
          "under",
          "union",
          "unique",
          "unknown",
          "unnest",
          "unset",
          "update",
          "upsert",
          "use",
          "user",
          "using",
          "validate",
          "value",
          "valued",
          "values",
          "via",
          "view",
          "when",
          "where",
          "while",
          "with",
          "within",
          "work",
          "xor"
        ],
        "literal": ["true", "false", "null", "missing|5"],
        "built_in": [
          "array_agg",
          "array_append",
          "array_concat",
          "array_contains",
          "array_count",
          "array_distinct",
          "array_ifnull",
          "array_length",
          "array_max",
          "array_min",
          "array_position",
          "array_prepend",
          "array_put",
          "array_range",
          "array_remove",
          "array_repeat",
          "array_replace",
          "array_reverse",
          "array_sort",
          "array_sum",
          "avg",
          "count",
          "max",
          "min",
          "sum",
          "greatest",
          "least",
          "ifmissing",
          "ifmissingornull",
          "ifnull",
          "missingif",
          "nullif",
          "ifinf",
          "ifnan",
          "ifnanorinf",
          "naninf",
          "neginfif",
          "posinfif",
          "clock_millis",
          "clock_str",
          "date_add_millis",
          "date_add_str",
          "date_diff_millis",
          "date_diff_str",
          "date_part_millis",
          "date_part_str",
          "date_trunc_millis",
          "date_trunc_str",
          "duration_to_str",
          "millis",
          "str_to_millis",
          "millis_to_str",
          "millis_to_utc",
          "millis_to_zone_name",
          "now_millis",
          "now_str",
          "str_to_duration",
          "str_to_utc",
          "str_to_zone_name",
          "decode_json",
          "encode_json",
          "encoded_size",
          "poly_length",
          "base64",
          "base64_encode",
          "base64_decode",
          "meta",
          "uuid",
          "abs",
          "acos",
          "asin",
          "atan",
          "atan2",
          "ceil",
          "cos",
          "degrees",
          "e",
          "exp",
          "ln",
          "log",
          "floor",
          "pi",
          "power",
          "radians",
          "random",
          "round",
          "sign",
          "sin",
          "sqrt",
          "tan",
          "trunc",
          "object_length",
          "object_names",
          "object_pairs",
          "object_inner_pairs",
          "object_values",
          "object_inner_values",
          "object_add",
          "object_put",
          "object_remove",
          "object_unwrap",
          "regexp_contains",
          "regexp_like",
          "regexp_position",
          "regexp_replace",
          "contains",
          "initcap",
          "length",
          "lower",
          "ltrim",
          "position",
          "repeat",
          "replace",
          "rtrim",
          "split",
          "substr",
          "title",
          "trim",
          "upper",
          "isarray",
          "isatom",
          "isboolean",
          "isnumber",
          "isobject",
          "isstring",
          "type",
          "toarray",
          "toatom",
          "toboolean",
          "tonumber",
          "toobject",
          "tostring"
        ]
      },
      contains: [
        Mode(
          className: "string",
          begin: "'",
          end: "'",
          contains: [
            BACKSLASH_ESCAPE,
          ],
        ),
        Mode(
          className: "string",
          begin: "\"",
          end: "\"",
          contains: [
            BACKSLASH_ESCAPE,
          ],
        ),
        Mode(
          className: "symbol",
          begin: "`",
          end: "`",
          contains: [
            BACKSLASH_ESCAPE,
          ],
        ),
        C_NUMBER_MODE,
        C_BLOCK_COMMENT_MODE,
      ],
    ),
    C_BLOCK_COMMENT_MODE,
  ],
);