araddon/qlbridge

Support Expression JSON

araddon opened this issue · 0 comments

Expression needs to support to/from json to allow json api usage.

  • re-implement the custom AST objects (filterstatement, etc) as Node interfaces
    • new Include
    • new BooleanNode
    • parser/ast uses new objects
  • node logic Elide, simplification to easiest form, collapsing single boolean/binaries.
  • vm supports new boolean, include
  • new simpler anonymous embed Expr for Json
  • cleanup old code in Node, Parse tree, VM that is no longer used or makes sense or not idiomatic
  • part of #99 allow custom validation for functions, allow a interface for func, validation
  • Allow different func registries per evaluation context (es) instead of falling back to global
  • downstream conversion 100% on queries, expressions
  • Value, NodeArray ensure are 100% tested and implemented in Protobuf, Json Conversions
  • test the hell out of this
    • new tests for escaping table.field name type identities.
    • new round-trip test's with both protobuf, json
  • new simpler anonymous embed Expr for Protobuf
  • implement ToEs()