1 #pragma once
2 
3 #include "BaseParser.hpp"
4 
5 namespace pdal
6 {
7 namespace expr
8 {
9 
10 class ConditionalParser : public BaseParser
11 {
12 public:
ConditionalParser(Lexer & lexer)13     ConditionalParser(Lexer& lexer) : BaseParser(lexer)
14     {}
15     bool expression(Expression& expr);
16 
17 protected:
18     bool notexpr(Expression& expr);
19     bool orexpr(Expression& expr);
20     bool andexpr(Expression& expr);
21     bool compareexpr(Expression& expr);
22     bool addexpr(Expression& expr);
23     bool multexpr(Expression& expr);
24     bool uminus(Expression& expr);
25     bool primary(Expression& expr);
26     bool parexpr(Expression& expr);
27 };
28 
29 } // namespace expr
30 } // namespace pdal
31