{
  "id": "Datasource.queryutils",
  "nodeType": "class",
  "name": "QueryUtils",
  "namespace": "Datasource",
  "startToken": {
    "type": "declaration.entity.name.class",
    "text": "QueryUtils",
    "textToLower": "queryutils",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "declaration.entity.name.class_QueryUtils_-1:0"
  },
  "order": 0,
  "memberOrder": 0,
  "accessModifier": {
    "type": "keyword.modifier.access",
    "text": "global",
    "textToLower": "global",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "keyword.modifier.access_global_-1:0"
  },
  "sharingModifier": {
    "type": "keyword.modifier.sharing",
    "text": "without sharing",
    "textToLower": "without sharing",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "keyword.modifier.sharing_without sharing_-1:0"
  },
  "description": "Contains helper methods to locally filter, sort, and apply limit and offset clauses to data rows. This helper class is provided for your convenience during early development and tests, but it isn’t supported for use in production environments.",
  "documentation": "https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_class_DataSource_QueryUtils.htm",
  "classes": {},
  "interfaces": {},
  "enums": {},
  "variables": {},
  "methods": {
    "applylimitandoffset(datasource.querycontext,list<map<string,object>>)": {
      "id": "Datasource.queryutils.method.applylimitandoffset(datasource.querycontext,list<map<string,object>>)",
      "nodeType": "method",
      "name": "applyLimitAndOffset",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "applyLimitAndOffset",
        "textToLower": "applylimitandoffset",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_applyLimitAndOffset_-1:0"
      },
      "parentId": "Datasource.queryutils",
      "order": 1,
      "memberOrder": 1,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "static": {
        "type": "keyword.modifier.static",
        "text": "static",
        "textToLower": "static",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 7
          },
          "end": {
            "line": 0,
            "character": 13
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_static_0:7"
      },
      "signature": "public static List<Map<String,Object>> applyLimitAndOffset(DataSource.QueryContext queryContext, List<Map<String,Object>> rows)",
      "overrideSignature": "public static override List<Map<String,Object>> applyLimitAndOffset(DataSource.QueryContext queryContext, List<Map<String,Object>> rows)",
      "simplifiedSignature": "applyLimitAndOffset(DataSource.QueryContext,List<Map<String,Object>>)",
      "datatype": {
        "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>",
        "nodeType": "datatype",
        "name": "List<Map<String,Object>>",
        "startToken": {
          "type": "datatype.collection",
          "text": "List",
          "textToLower": "list",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 14
            },
            "end": {
              "line": 0,
              "character": 18
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_List_0:14"
        },
        "parentId": "Datasource.queryutils.applylimitandoffset",
        "order": 0,
        "memberOrder": 0,
        "type": "List",
        "value": {
          "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>.value.Map<String,Object>",
          "nodeType": "datatype",
          "name": "Map<String,Object>",
          "startToken": {
            "type": "datatype.collection",
            "text": "Map",
            "textToLower": "map",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 19
              },
              "end": {
                "line": 0,
                "character": 22
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_Map_0:19"
          },
          "order": 0,
          "memberOrder": 0,
          "type": "Map",
          "value": {
            "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>.value.Map<String,Object>.value.Object",
            "nodeType": "datatype",
            "name": "Object",
            "startToken": {
              "type": "datatype.primitive",
              "text": "Object",
              "textToLower": "object",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 30
                },
                "end": {
                  "line": 0,
                  "character": 36
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Object_0:30"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "Object"
          },
          "key": {
            "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>.value.Map<String,Object>.key.String",
            "nodeType": "datatype",
            "name": "String",
            "startToken": {
              "type": "datatype.primitive",
              "text": "String",
              "textToLower": "string",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 23
                },
                "end": {
                  "line": 0,
                  "character": 29
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_String_0:23"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "String"
          }
        }
      },
      "description": "Returns a subset of data rows after locally applying limit and offset clauses from the query. This helper method is provided for your convenience during early development and tests, but it isn’t supported for use in production environments.",
      "parentName": "QueryUtils",
      "variables": {},
      "params": {
        "querycontext": {
          "id": "Datasource.queryutils.method.applylimitandoffset(datasource.querycontext,list<map<string,object>>).varParam.querycontext",
          "nodeType": "variable",
          "name": "queryContext",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "queryContext",
            "textToLower": "querycontext",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 83
              },
              "end": {
                "line": 0,
                "character": 95
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_queryContext_0:83"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "queryContext",
            "textToLower": "querycontext",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 83
              },
              "end": {
                "line": 0,
                "character": 95
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_queryContext_0:83"
          },
          "parentId": "Datasource.queryutils.method.applylimitandoffset(datasource.querycontext,list<map<string,object>>)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Datasource.queryutils.applylimitandoffset.datatype.DataSource.QueryContext",
            "nodeType": "datatype",
            "name": "DataSource.QueryContext",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "DataSource",
              "textToLower": "datasource",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 59
                },
                "end": {
                  "line": 0,
                  "character": 69
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_DataSource_0:59"
            },
            "parentId": "Datasource.queryutils.applylimitandoffset",
            "order": 0,
            "memberOrder": 0,
            "type": "DataSource.QueryContext"
          },
          "scope": null
        },
        "rows": {
          "id": "Datasource.queryutils.method.applylimitandoffset(datasource.querycontext,list<map<string,object>>).varParam.rows",
          "nodeType": "variable",
          "name": "rows",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "rows",
            "textToLower": "rows",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 122
              },
              "end": {
                "line": 0,
                "character": 126
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_rows_0:122"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "rows",
            "textToLower": "rows",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 122
              },
              "end": {
                "line": 0,
                "character": 126
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_rows_0:122"
          },
          "parentId": "Datasource.queryutils.method.applylimitandoffset(datasource.querycontext,list<map<string,object>>)",
          "order": 2,
          "memberOrder": 2,
          "datatype": {
            "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>",
            "nodeType": "datatype",
            "name": "List<Map<String,Object>>",
            "startToken": {
              "type": "datatype.collection",
              "text": "List",
              "textToLower": "list",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 97
                },
                "end": {
                  "line": 0,
                  "character": 101
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_List_0:97"
            },
            "parentId": "Datasource.queryutils.applylimitandoffset",
            "order": 0,
            "memberOrder": 0,
            "type": "List",
            "value": {
              "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>.value.Map<String,Object>",
              "nodeType": "datatype",
              "name": "Map<String,Object>",
              "startToken": {
                "type": "datatype.collection",
                "text": "Map",
                "textToLower": "map",
                "isAux": false,
                "range": {
                  "start": {
                    "line": 0,
                    "character": 102
                  },
                  "end": {
                    "line": 0,
                    "character": 105
                  },
                  "isEmpty": false,
                  "isSingleLine": true
                },
                "id": "token.type.identifier_Map_0:102"
              },
              "order": 0,
              "memberOrder": 0,
              "type": "Map",
              "value": {
                "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>.value.Map<String,Object>.value.Object",
                "nodeType": "datatype",
                "name": "Object",
                "startToken": {
                  "type": "datatype.primitive",
                  "text": "Object",
                  "textToLower": "object",
                  "isAux": false,
                  "range": {
                    "start": {
                      "line": 0,
                      "character": 113
                    },
                    "end": {
                      "line": 0,
                      "character": 119
                    },
                    "isEmpty": false,
                    "isSingleLine": true
                  },
                  "id": "token.type.identifier_Object_0:113"
                },
                "order": 0,
                "memberOrder": 0,
                "type": "Object"
              },
              "key": {
                "id": "Datasource.queryutils.applylimitandoffset.datatype.List<Map<String,Object>>.value.Map<String,Object>.key.String",
                "nodeType": "datatype",
                "name": "String",
                "startToken": {
                  "type": "datatype.primitive",
                  "text": "String",
                  "textToLower": "string",
                  "isAux": false,
                  "range": {
                    "start": {
                      "line": 0,
                      "character": 106
                    },
                    "end": {
                      "line": 0,
                      "character": 112
                    },
                    "isEmpty": false,
                    "isSingleLine": true
                  },
                  "id": "token.type.identifier_String_0:106"
                },
                "order": 0,
                "memberOrder": 0,
                "type": "String"
              }
            }
          },
          "description": "Represents the query to run against a data table. Rows of data.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    },
    "filter(datasource.querycontext,list<map<string,object>>)": {
      "id": "Datasource.queryutils.method.filter(datasource.querycontext,list<map<string,object>>)",
      "nodeType": "method",
      "name": "filter",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "filter",
        "textToLower": "filter",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_filter_-1:0"
      },
      "parentId": "Datasource.queryutils",
      "order": 2,
      "memberOrder": 2,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "static": {
        "type": "keyword.modifier.static",
        "text": "static",
        "textToLower": "static",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 7
          },
          "end": {
            "line": 0,
            "character": 13
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_static_0:7"
      },
      "signature": "public static List<Map<String,bject>> filter(DataSource.QueryContext queryContext, List<Map<String,Object>> rows)",
      "overrideSignature": "public static override List<Map<String,bject>> filter(DataSource.QueryContext queryContext, List<Map<String,Object>> rows)",
      "simplifiedSignature": "filter(DataSource.QueryContext,List<Map<String,Object>>)",
      "datatype": {
        "id": "Datasource.queryutils.filter.datatype.List<Map<String,bject>>",
        "nodeType": "datatype",
        "name": "List<Map<String,bject>>",
        "startToken": {
          "type": "datatype.collection",
          "text": "List",
          "textToLower": "list",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 14
            },
            "end": {
              "line": 0,
              "character": 18
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_List_0:14"
        },
        "parentId": "Datasource.queryutils.filter",
        "order": 0,
        "memberOrder": 0,
        "type": "List",
        "value": {
          "id": "Datasource.queryutils.filter.datatype.List<Map<String,bject>>.value.Map<String,bject>",
          "nodeType": "datatype",
          "name": "Map<String,bject>",
          "startToken": {
            "type": "datatype.collection",
            "text": "Map",
            "textToLower": "map",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 19
              },
              "end": {
                "line": 0,
                "character": 22
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_Map_0:19"
          },
          "order": 0,
          "memberOrder": 0,
          "type": "Map",
          "value": {
            "id": "Datasource.queryutils.filter.datatype.List<Map<String,bject>>.value.Map<String,bject>.value.bject",
            "nodeType": "datatype",
            "name": "bject",
            "startToken": {
              "type": "datatype.custom.class",
              "text": "bject",
              "textToLower": "bject",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 30
                },
                "end": {
                  "line": 0,
                  "character": 35
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_bject_0:30"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "bject"
          },
          "key": {
            "id": "Datasource.queryutils.filter.datatype.List<Map<String,bject>>.value.Map<String,bject>.key.String",
            "nodeType": "datatype",
            "name": "String",
            "startToken": {
              "type": "datatype.primitive",
              "text": "String",
              "textToLower": "string",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 23
                },
                "end": {
                  "line": 0,
                  "character": 29
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_String_0:23"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "String"
          }
        }
      },
      "description": "Returns a subset of data rows after locally ordering and applying filters from the query. This helper method is provided for your convenience during early development and tests, but it isn’t supported for use in production environments.",
      "parentName": "QueryUtils",
      "variables": {},
      "params": {
        "querycontext": {
          "id": "Datasource.queryutils.method.filter(datasource.querycontext,list<map<string,object>>).varParam.querycontext",
          "nodeType": "variable",
          "name": "queryContext",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "queryContext",
            "textToLower": "querycontext",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 69
              },
              "end": {
                "line": 0,
                "character": 81
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_queryContext_0:69"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "queryContext",
            "textToLower": "querycontext",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 69
              },
              "end": {
                "line": 0,
                "character": 81
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_queryContext_0:69"
          },
          "parentId": "Datasource.queryutils.method.filter(datasource.querycontext,list<map<string,object>>)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Datasource.queryutils.filter.datatype.DataSource.QueryContext",
            "nodeType": "datatype",
            "name": "DataSource.QueryContext",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "DataSource",
              "textToLower": "datasource",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 45
                },
                "end": {
                  "line": 0,
                  "character": 55
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_DataSource_0:45"
            },
            "parentId": "Datasource.queryutils.filter",
            "order": 0,
            "memberOrder": 0,
            "type": "DataSource.QueryContext"
          },
          "scope": null
        },
        "rows": {
          "id": "Datasource.queryutils.method.filter(datasource.querycontext,list<map<string,object>>).varParam.rows",
          "nodeType": "variable",
          "name": "rows",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "rows",
            "textToLower": "rows",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 108
              },
              "end": {
                "line": 0,
                "character": 112
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_rows_0:108"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "rows",
            "textToLower": "rows",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 108
              },
              "end": {
                "line": 0,
                "character": 112
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_rows_0:108"
          },
          "parentId": "Datasource.queryutils.method.filter(datasource.querycontext,list<map<string,object>>)",
          "order": 2,
          "memberOrder": 2,
          "datatype": {
            "id": "Datasource.queryutils.filter.datatype.List<Map<String,Object>>",
            "nodeType": "datatype",
            "name": "List<Map<String,Object>>",
            "startToken": {
              "type": "datatype.collection",
              "text": "List",
              "textToLower": "list",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 83
                },
                "end": {
                  "line": 0,
                  "character": 87
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_List_0:83"
            },
            "parentId": "Datasource.queryutils.filter",
            "order": 0,
            "memberOrder": 0,
            "type": "List",
            "value": {
              "id": "Datasource.queryutils.filter.datatype.List<Map<String,Object>>.value.Map<String,Object>",
              "nodeType": "datatype",
              "name": "Map<String,Object>",
              "startToken": {
                "type": "datatype.collection",
                "text": "Map",
                "textToLower": "map",
                "isAux": false,
                "range": {
                  "start": {
                    "line": 0,
                    "character": 88
                  },
                  "end": {
                    "line": 0,
                    "character": 91
                  },
                  "isEmpty": false,
                  "isSingleLine": true
                },
                "id": "token.type.identifier_Map_0:88"
              },
              "order": 0,
              "memberOrder": 0,
              "type": "Map",
              "value": {
                "id": "Datasource.queryutils.filter.datatype.List<Map<String,Object>>.value.Map<String,Object>.value.Object",
                "nodeType": "datatype",
                "name": "Object",
                "startToken": {
                  "type": "datatype.primitive",
                  "text": "Object",
                  "textToLower": "object",
                  "isAux": false,
                  "range": {
                    "start": {
                      "line": 0,
                      "character": 99
                    },
                    "end": {
                      "line": 0,
                      "character": 105
                    },
                    "isEmpty": false,
                    "isSingleLine": true
                  },
                  "id": "token.type.identifier_Object_0:99"
                },
                "order": 0,
                "memberOrder": 0,
                "type": "Object"
              },
              "key": {
                "id": "Datasource.queryutils.filter.datatype.List<Map<String,Object>>.value.Map<String,Object>.key.String",
                "nodeType": "datatype",
                "name": "String",
                "startToken": {
                  "type": "datatype.primitive",
                  "text": "String",
                  "textToLower": "string",
                  "isAux": false,
                  "range": {
                    "start": {
                      "line": 0,
                      "character": 92
                    },
                    "end": {
                      "line": 0,
                      "character": 98
                    },
                    "isEmpty": false,
                    "isSingleLine": true
                  },
                  "id": "token.type.identifier_String_0:92"
                },
                "order": 0,
                "memberOrder": 0,
                "type": "String"
              }
            }
          },
          "description": "Represents the query to run against a data table. Rows of data.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    },
    "process(datasource.querycontext,list<map<string,object>>)": {
      "id": "Datasource.queryutils.method.process(datasource.querycontext,list<map<string,object>>)",
      "nodeType": "method",
      "name": "process",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "process",
        "textToLower": "process",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_process_-1:0"
      },
      "parentId": "Datasource.queryutils",
      "order": 3,
      "memberOrder": 3,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "static": {
        "type": "keyword.modifier.static",
        "text": "static",
        "textToLower": "static",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 7
          },
          "end": {
            "line": 0,
            "character": 13
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_static_0:7"
      },
      "signature": "public static List<Map<String,bject>> process(DataSource.QueryContext queryContext, List<Map<String,Object>> rows)",
      "overrideSignature": "public static override List<Map<String,bject>> process(DataSource.QueryContext queryContext, List<Map<String,Object>> rows)",
      "simplifiedSignature": "process(DataSource.QueryContext,List<Map<String,Object>>)",
      "datatype": {
        "id": "Datasource.queryutils.process.datatype.List<Map<String,bject>>",
        "nodeType": "datatype",
        "name": "List<Map<String,bject>>",
        "startToken": {
          "type": "datatype.collection",
          "text": "List",
          "textToLower": "list",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 14
            },
            "end": {
              "line": 0,
              "character": 18
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_List_0:14"
        },
        "parentId": "Datasource.queryutils.process",
        "order": 0,
        "memberOrder": 0,
        "type": "List",
        "value": {
          "id": "Datasource.queryutils.process.datatype.List<Map<String,bject>>.value.Map<String,bject>",
          "nodeType": "datatype",
          "name": "Map<String,bject>",
          "startToken": {
            "type": "datatype.collection",
            "text": "Map",
            "textToLower": "map",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 19
              },
              "end": {
                "line": 0,
                "character": 22
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_Map_0:19"
          },
          "order": 0,
          "memberOrder": 0,
          "type": "Map",
          "value": {
            "id": "Datasource.queryutils.process.datatype.List<Map<String,bject>>.value.Map<String,bject>.value.bject",
            "nodeType": "datatype",
            "name": "bject",
            "startToken": {
              "type": "datatype.custom.class",
              "text": "bject",
              "textToLower": "bject",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 30
                },
                "end": {
                  "line": 0,
                  "character": 35
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_bject_0:30"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "bject"
          },
          "key": {
            "id": "Datasource.queryutils.process.datatype.List<Map<String,bject>>.value.Map<String,bject>.key.String",
            "nodeType": "datatype",
            "name": "String",
            "startToken": {
              "type": "datatype.primitive",
              "text": "String",
              "textToLower": "string",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 23
                },
                "end": {
                  "line": 0,
                  "character": 29
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_String_0:23"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "String"
          }
        }
      },
      "description": "Returns data rows after locally filtering, sorting, ordering, and applying limit and offset clauses from the query. This helper method is provided for your convenience during early development and tests, but it isn’t supported for use in production environments.",
      "parentName": "QueryUtils",
      "variables": {},
      "params": {
        "querycontext": {
          "id": "Datasource.queryutils.method.process(datasource.querycontext,list<map<string,object>>).varParam.querycontext",
          "nodeType": "variable",
          "name": "queryContext",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "queryContext",
            "textToLower": "querycontext",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 70
              },
              "end": {
                "line": 0,
                "character": 82
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_queryContext_0:70"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "queryContext",
            "textToLower": "querycontext",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 70
              },
              "end": {
                "line": 0,
                "character": 82
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_queryContext_0:70"
          },
          "parentId": "Datasource.queryutils.method.process(datasource.querycontext,list<map<string,object>>)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Datasource.queryutils.process.datatype.DataSource.QueryContext",
            "nodeType": "datatype",
            "name": "DataSource.QueryContext",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "DataSource",
              "textToLower": "datasource",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 46
                },
                "end": {
                  "line": 0,
                  "character": 56
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_DataSource_0:46"
            },
            "parentId": "Datasource.queryutils.process",
            "order": 0,
            "memberOrder": 0,
            "type": "DataSource.QueryContext"
          },
          "scope": null
        },
        "rows": {
          "id": "Datasource.queryutils.method.process(datasource.querycontext,list<map<string,object>>).varParam.rows",
          "nodeType": "variable",
          "name": "rows",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "rows",
            "textToLower": "rows",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 109
              },
              "end": {
                "line": 0,
                "character": 113
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_rows_0:109"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "rows",
            "textToLower": "rows",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 109
              },
              "end": {
                "line": 0,
                "character": 113
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_rows_0:109"
          },
          "parentId": "Datasource.queryutils.method.process(datasource.querycontext,list<map<string,object>>)",
          "order": 2,
          "memberOrder": 2,
          "datatype": {
            "id": "Datasource.queryutils.process.datatype.List<Map<String,Object>>",
            "nodeType": "datatype",
            "name": "List<Map<String,Object>>",
            "startToken": {
              "type": "datatype.collection",
              "text": "List",
              "textToLower": "list",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 84
                },
                "end": {
                  "line": 0,
                  "character": 88
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_List_0:84"
            },
            "parentId": "Datasource.queryutils.process",
            "order": 0,
            "memberOrder": 0,
            "type": "List",
            "value": {
              "id": "Datasource.queryutils.process.datatype.List<Map<String,Object>>.value.Map<String,Object>",
              "nodeType": "datatype",
              "name": "Map<String,Object>",
              "startToken": {
                "type": "datatype.collection",
                "text": "Map",
                "textToLower": "map",
                "isAux": false,
                "range": {
                  "start": {
                    "line": 0,
                    "character": 89
                  },
                  "end": {
                    "line": 0,
                    "character": 92
                  },
                  "isEmpty": false,
                  "isSingleLine": true
                },
                "id": "token.type.identifier_Map_0:89"
              },
              "order": 0,
              "memberOrder": 0,
              "type": "Map",
              "value": {
                "id": "Datasource.queryutils.process.datatype.List<Map<String,Object>>.value.Map<String,Object>.value.Object",
                "nodeType": "datatype",
                "name": "Object",
                "startToken": {
                  "type": "datatype.primitive",
                  "text": "Object",
                  "textToLower": "object",
                  "isAux": false,
                  "range": {
                    "start": {
                      "line": 0,
                      "character": 100
                    },
                    "end": {
                      "line": 0,
                      "character": 106
                    },
                    "isEmpty": false,
                    "isSingleLine": true
                  },
                  "id": "token.type.identifier_Object_0:100"
                },
                "order": 0,
                "memberOrder": 0,
                "type": "Object"
              },
              "key": {
                "id": "Datasource.queryutils.process.datatype.List<Map<String,Object>>.value.Map<String,Object>.key.String",
                "nodeType": "datatype",
                "name": "String",
                "startToken": {
                  "type": "datatype.primitive",
                  "text": "String",
                  "textToLower": "string",
                  "isAux": false,
                  "range": {
                    "start": {
                      "line": 0,
                      "character": 93
                    },
                    "end": {
                      "line": 0,
                      "character": 99
                    },
                    "isEmpty": false,
                    "isSingleLine": true
                  },
                  "id": "token.type.identifier_String_0:93"
                },
                "order": 0,
                "memberOrder": 0,
                "type": "String"
              }
            }
          },
          "description": "Represents the query to run against a data table. Rows of data.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    },
    "sort()": {
      "id": "Datasource.queryutils.method.sort()",
      "nodeType": "method",
      "name": "sort",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "sort",
        "textToLower": "sort",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_sort_-1:0"
      },
      "parentId": "Datasource.queryutils",
      "order": 4,
      "memberOrder": 4,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "static": {
        "type": "keyword.modifier.static",
        "text": "static",
        "textToLower": "static",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 7
          },
          "end": {
            "line": 0,
            "character": 13
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_static_0:7"
      },
      "signature": "public static List<Map<String,bject>> sort()",
      "overrideSignature": "public static override List<Map<String,bject>> sort()",
      "simplifiedSignature": "sort()",
      "datatype": {
        "id": "Datasource.queryutils.sort.datatype.List<Map<String,bject>>",
        "nodeType": "datatype",
        "name": "List<Map<String,bject>>",
        "startToken": {
          "type": "datatype.collection",
          "text": "List",
          "textToLower": "list",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 80
            },
            "end": {
              "line": 0,
              "character": 84
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_List_0:80"
        },
        "parentId": "Datasource.queryutils.sort",
        "order": 0,
        "memberOrder": 0,
        "type": "List",
        "value": {
          "id": "Datasource.queryutils.sort.datatype.List<Map<String,bject>>.value.Map<String,bject>",
          "nodeType": "datatype",
          "name": "Map<String,bject>",
          "startToken": {
            "type": "datatype.collection",
            "text": "Map",
            "textToLower": "map",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 85
              },
              "end": {
                "line": 0,
                "character": 88
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_Map_0:85"
          },
          "order": 0,
          "memberOrder": 0,
          "type": "Map",
          "value": {
            "id": "Datasource.queryutils.sort.datatype.List<Map<String,bject>>.value.Map<String,bject>.value.bject",
            "nodeType": "datatype",
            "name": "bject",
            "startToken": {
              "type": "datatype.custom.class",
              "text": "bject",
              "textToLower": "bject",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 96
                },
                "end": {
                  "line": 0,
                  "character": 101
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_bject_0:96"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "bject"
          },
          "key": {
            "id": "Datasource.queryutils.sort.datatype.List<Map<String,bject>>.value.Map<String,bject>.key.String",
            "nodeType": "datatype",
            "name": "String",
            "startToken": {
              "type": "datatype.primitive",
              "text": "String",
              "textToLower": "string",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 89
                },
                "end": {
                  "line": 0,
                  "character": 95
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_String_0:89"
            },
            "order": 0,
            "memberOrder": 0,
            "type": "String"
          }
        }
      },
      "description": "Returns data rows after locally sorting and applying the order from the query. This helper method is provided for your convenience during early development and tests, but it isn’t supported for use in production environments.",
      "parentName": "QueryUtils",
      "variables": {},
      "params": {},
      "queries": [],
      "exceptions": []
    }
  },
  "constructors": {},
  "extendsType": "",
  "implementTypes": [],
  "implements": {},
  "totalMembers": 4,
  "queries": []
}