yql_stat_expr_nodes.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. #pragma once
  2. #include <yql/essentials/core/expr_nodes/yql_expr_nodes.h>
  3. #include <yql/essentials/providers/common/provider/yql_provider_names.h>
  4. #include <yql/providers/stat/expr_nodes/yql_stat_expr_nodes.gen.h>
  5. namespace NYql {
  6. namespace NNodes {
  7. #include <yql/providers/stat/expr_nodes/yql_stat_expr_nodes.decl.inl.h>
  8. class TStatDSource: public NGenerated::TStatDSourceStub<TExprBase, TCallable, TCoAtom> {
  9. public:
  10. explicit TStatDSource(const TExprNode* node)
  11. : TStatDSourceStub {node}
  12. {
  13. }
  14. explicit TStatDSource(const TExprNode::TPtr& node)
  15. : TStatDSourceStub {node}
  16. {
  17. }
  18. static bool Match(const TExprNode* node) {
  19. if (!TStatDSourceStub::Match(node)) {
  20. return false;
  21. }
  22. if (node->Child(0)->Content() != StatProviderName) {
  23. return false;
  24. }
  25. return true;
  26. }
  27. };
  28. class TStatDSink: public NGenerated::TStatDSinkStub<TExprBase, TCallable, TCoAtom> {
  29. public:
  30. explicit TStatDSink(const TExprNode* node)
  31. : TStatDSinkStub {node}
  32. {
  33. }
  34. explicit TStatDSink(const TExprNode::TPtr& node)
  35. : TStatDSinkStub {node}
  36. {
  37. }
  38. static bool Match(const TExprNode* node) {
  39. if (!TStatDSinkStub::Match(node)) {
  40. return false;
  41. }
  42. if (node->Child(0)->Content() != StatProviderName) {
  43. return false;
  44. }
  45. return true;
  46. }
  47. };
  48. #include <yql/providers/stat/expr_nodes/yql_stat_expr_nodes.defs.inl.h>
  49. } // namespace NNodes
  50. } // namespace NYql