-
Notifications
You must be signed in to change notification settings - Fork 0
Development Road Map
ChronEx is both a specification and a reference implementation
The actual specification is currently a work in progress and is on the repo readme
The reference implementation will be written in .net core c#
Allows for simple (non nested groups) OR group expressions,
This is a the basic foundational work to get the concept up and running.
Features
This release will support reading a IEnumerable of Events and will support specific named selectors and wildcard selectors. IsMatch and MatchCount methods are provided
Implementation Notes
This release is very raw and has a very primitive parser , the parser just splits by line breaks and looks at the text to create the element type. There is a very primitive AST that will serve as the basis for future releases
Will add a selector that is defined as a regex to match event names. Also added the capability to single quote a selector
Features
The Main change in this release will be to allow the addition of an element that is a regex expression to match event names
Implementation Notes
The AST and Runner will not change much however this release will require the creation of the Lexer and Tokenizer to allow the parsing of the regex
Adding Negations
Features
This feature will add the ability to specify that a selector is a negating selector by prepending a ! to the selector
Implementation Notes
The AST will become a real tree as the negated token will contain children. Additionally the Tokenizer and Parser are going to upgraded to deal with nested groupings. The runner will change slightly to be able to deal with nested groups
This was a mini release that surfaced the matches method (implementation was completed in 0.3 but there was no public method for it). Additionally I added a simple query editor application to enable exploration of datasets and help explore use cases for patterns and highlight ways for the patterns to evolve
Will add regex style symbol quantifiers symbol to selectors,
Features
Selectors will be able to specify a symbol quantifier. The following symbols will be available *,+,? . Quantifiers are considered lazy
Implementation Notes
Will keep the current naive statement splitting parser. Adding Lexer and AST for the symbol quantifiers Adding a state bag to trackers so that the AST classes can remain stateless Adding a return signal to the tracker / ast interface to indicate to continue with this element or to immediately pass this event on to the next element
Adding a - flag to ignore the capture for events,
Features
a minus ( - ) symbol prepended to a selector will cause the events that match that to be ignored and not captured
Implementation Notes
need to add a mechanism for the tracker to tell the runner to not capture a specific event
Parentheses will allow you to specify a group of and statements
Features
Implementation Notes