1. A method comprising: receiving, by a processing device, a search query from a remote device, wherein the search query includes one or more query terms; generating, by the processing device, a collection of one or more analyzed tokens based on the search query, wherein the collection of one or more analyzed tokens indicates at least a subset of the one or more query terms; analyzing, by the processing device, the collection of one or more analyzed tokens with a plurality of different parsers, wherein: each parser of the plurality of different parsers is configured to (i) according to a parsing operation specific to the parser, parse at least one of (a) the collection of one or more analyzed tokens and (b) the search query and (ii) output parsed query that includes a list of one or more parsed tokens, each of the parsed tokens includes a corresponding string, and at least one parsed token of at least one of the parsed queries includes one or more properties of the corresponding string; generating, by the processing device, a retrieval query based on the parsed queries output by the plurality of different parsers, wherein: the retrieval query is a data structure that includes a plurality of retrieval leaf nodes, and each retrieval leaf node of the plurality of retrieval leaf nodes stores at least one of (i) a property of a string from a respective one of the parsed tokens and (ii) the string from the respective one of the parsed tokens; identifying, by the processing device, a consideration set of records based on the plurality of retrieval leaf nodes, wherein each record of the consideration set of records includes state data related to at least one of (i) a function of a corresponding application and (ii) a state of the corresponding application resulting from performing the function; determining, by the processing device, for each record in the consideration set of records, a result score for the record, wherein the result score for the record is determined based on a matching between the retrieval leaf node and the state data of the record; generating, by the processing device, search results based on a subset of the consideration set of records, wherein the subset is selected based on the result scores of the consideration set of records; and providing, by the processing device, the search results to the remote device.
1. A method comprising: receiving, by a processing device, a search query from a remote device, wherein the search query includes one or more query terms; generating, by the processing device, a collection of one or more analyzed tokens based on the search query, wherein the collection of one or more analyzed tokens indicates at least a subset of the one or more query terms; analyzing, by the processing device, the collection of one or more analyzed tokens with a plurality of different parsers, wherein: each parser of the plurality of different parsers is configured to (i) according to a parsing operation specific to the parser, parse at least one of (a) the collection of one or more analyzed tokens and (b) the search query and (ii) output parsed query that includes a list of one or more parsed tokens, each of the parsed tokens includes a corresponding string, and at least one parsed token of at least one of the parsed queries includes one or more properties of the corresponding string; generating, by the processing device, a retrieval query based on the parsed queries output by the plurality of different parsers, wherein: the retrieval query is a data structure that includes a plurality of retrieval leaf nodes, and each retrieval leaf node of the plurality of retrieval leaf nodes stores at least one of (i) a property of a string from a respective one of the parsed tokens and (ii) the string from the respective one of the parsed tokens; identifying, by the processing device, a consideration set of records based on the plurality of retrieval leaf nodes, wherein each record of the consideration set of records includes state data related to at least one of (i) a function of a corresponding application and (ii) a state of the corresponding application resulting from performing the function; determining, by the processing device, for each record in the consideration set of records, a result score for the record, wherein the result score for the record is determined based on a matching between the retrieval leaf node and the state data of the record; generating, by the processing device, search results based on a subset of the consideration set of records, wherein the subset is selected based on the result scores of the consideration set of records; and providing, by the processing device, the search results to the remote device. 2. The method of claim 1 , wherein: at least one of the parsed tokens of at least one of the parsed queries includes a confidence value; and the confidence value indicates a level of confidence of a property of the string determined by the parser that generated the parsed token.