Trie specialization allowing storage of value keyed by patterns and retrieval by tokens
First Claim
Patent Images
1. A method of invoking a program associated with a command string, the method comprising:
- receiving the command string;
dividing the command string into a plurality of tokens, wherein one or more of the plurality of tokens include a plurality of adjacent characters in the command string;
using a processor, identifying a node-path within a trie data structure corresponding to the plurality of tokens, wherein;
the trie data structure comprises a plurality of nodes arranged in a tree-like manner;
each node in the plurality of nodes includes a lookup key in the form of a regular expression;
one or more nodes in the plurality of nodes includes a value in the form of a program; and
identifying the node-path comprises identifying a series of sequential, connected, descending nodes in the trie data structure such that the regular expression lookup key included in each node in the series matches a respective sequential token in the command string;
determining that the lookup key included in a final node is a wildcard;
extracting a program included in the final node in the node-path; and
in response to determining the lookup key included in the final node is a wildcard, executing the program associated with the final node by providing one or more tokens subsequent to the token that matches the final node as arguments to the program.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and computer-readable media for efficiently and flexibly invoking programs or subroutines specified by command terminal input strings using a trie data structure include: receiving a command string; dividing the command string into one or more tokens, wherein the one or more tokens are delimited by whitespace within the command string; identifying a node-path within a trie data structure corresponding to the one or more tokens; extracting a program stored in a final node in the node-path; and executing the program.
-
Citations
17 Claims
-
1. A method of invoking a program associated with a command string, the method comprising:
-
receiving the command string; dividing the command string into a plurality of tokens, wherein one or more of the plurality of tokens include a plurality of adjacent characters in the command string; using a processor, identifying a node-path within a trie data structure corresponding to the plurality of tokens, wherein; the trie data structure comprises a plurality of nodes arranged in a tree-like manner; each node in the plurality of nodes includes a lookup key in the form of a regular expression; one or more nodes in the plurality of nodes includes a value in the form of a program; and identifying the node-path comprises identifying a series of sequential, connected, descending nodes in the trie data structure such that the regular expression lookup key included in each node in the series matches a respective sequential token in the command string; determining that the lookup key included in a final node is a wildcard; extracting a program included in the final node in the node-path; and in response to determining the lookup key included in the final node is a wildcard, executing the program associated with the final node by providing one or more tokens subsequent to the token that matches the final node as arguments to the program.
-
-
2. A method of invoking a program associated with a command string, the method comprising:
-
receiving the command string; dividing the command string into a plurality of tokens, wherein one or more of the plurality of tokens include a plurality of adjacent characters in the command string using a processor, identifying a node-path within a trie data structure corresponding to the plurality of tokens, wherein the trie data structure comprises a plurality of nodes arranged in a tree-like manner; each node in the plurality of nodes includes a lookup key in the form of a text string; the lookup keys included in one or more nodes in the data structure are regular expressions; one or more nodes in the plurality of nodes is associated with a value in the form of a program; and identifying the node-path comprises identifying a series of sequential, connected, descending nodes in the data structure such that the lookup key included in each node in the series matches a respective sequential token in the command string; determining that the lookup key included in a final node is a wildcard; extracting a program associated with the final node in the node-path; and in response to determining that the lookup key included in the final node is a wildcard, executing the program associated with the final node by providing one or more tokens subsequent to the token that matches the final node as arguments to the program. - View Dependent Claims (3, 4, 5, 6, 7, 8)
-
-
9. A system configured to invoke a program associated with a command string, the system comprising:
-
a processing system comprising one or more processors; and a memory system comprising one or more computer-readable media, wherein the computer-readable media contain instructions stored thereon that, if executed by the processing system, cause the system to perform operations comprising; receiving the command string; dividing the command string into a plurality of tokens, wherein one or more of the plurality of tokens include a plurality of adjacent characters in the command string; identifying a node-path within a trie data structure corresponding to the plurality of tokens, wherein the trie data structure comprises a plurality of nodes arranged in a tree-like manner; each node in the plurality of nodes includes a lookup key in the form of a text string; the lookup keys included in one or more nodes in the trie data structure are regular expressions; one or more nodes in the plurality of nodes is associated with a value in the form of a program; and identifying the node-path comprises identifying a series of sequential, connected, descending nodes in the trie data structure such that the lookup key included in each node in the series matches a respective sequential token in the command string; determining that the look key included in a final node is a wildcard; extracting a program associated with the final node in the node-path; and in response to determining that the lookup key in the final node is a wildcard, executing the program associated with the final node by providing one or more tokens subsequent to the token that matches the final node as arguments to the program. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A memory device containing instructions stored therein, wherein the instructions, if executed by a processing system within a computing system, cause the computing system to perform operations comprising:
-
receiving a command string; dividing the command string into a plurality of tokens, wherein one or more of the plurality of tokens include a plurality of adjacent characters in the command string; identifying a node-path within a trie data structure corresponding to the plurality of tokens, wherein the trie data structure comprises a plurality of nodes arranged in a tree-like manner; each node in the plurality of nodes includes a lookup key in the form of a text string; the lookup keys included in one or more nodes in the trie data structure are regular expressions; one or more nodes in the plurality of nodes includes a value in the four of a program; and identifying the node-path comprises identifying a series of sequential, connected, descending nodes in the trie data structure such that the lookup key included in each node in the series matches a respective sequential token in the command string; determining that the lookup key included in a final node is a wildcard; extracting a program associated with the final node in the node-path; and in response to determining that the lookup key included in the final node is a wildcard, executing the program associated with the final node by providing one or more tokens subsequent to the token that matches the final node as arguments to the program. - View Dependent Claims (17)
-
Specification