The only difference is the existence of the T data attribute which could simply be T? data inside an all-encompassing Node class. Would merging these two classes make the API simpler to use and easier to manage? Would it be a beneficial change?
[ ] Should lists be nullable or just allowed to be empty?
[ ] Do we need a walk function given that we have a transform function?
Parser ideas
With the parser, I'm considering reducing the use of regular expressions for some of the more complicated patterns and implementing a recursive descent style parser.
Work in progress. Comments preceded by Comment are prompts for review comments and dialogue about the design of the API. I am also open to comments about the general Dart coding style. I have included several comments about the design of the API and I am actively looking for feedback.
TODO
Design questions
T data
attribute which could simply beT? data
inside an all-encompassingNode
class. Would merging these two classes make the API simpler to use and easier to manage? Would it be a beneficial change?Parser ideas
Work in progress. Comments preceded by
Comment
are prompts for review comments and dialogue about the design of the API. I am also open to comments about the general Dart coding style. I have included several comments about the design of the API and I am actively looking for feedback.Resolves #1