yql_expr_serialize.h 515 B

12345678910111213141516171819
  1. #pragma once
  2. #include <yql/essentials/ast/yql_expr.h>
  3. namespace NYql {
  4. struct TSerializedExprGraphComponents {
  5. enum : ui16 {
  6. Graph = 0x00,
  7. Positions = 0x01
  8. };
  9. };
  10. TString SerializeGraph(const TExprNode& node, TExprContext& ctx, ui16 components = TSerializedExprGraphComponents::Graph);
  11. TExprNode::TPtr DeserializeGraph(TPositionHandle pos, TStringBuf buffer, TExprContext& ctx);
  12. TExprNode::TPtr DeserializeGraph(TPosition pos, TStringBuf buffer, TExprContext& ctx);
  13. } // namespace NYql