X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbooleanevaluator.h;h=08ed432665bd48fd6822e2215b53b3adc2d3d6ca;hb=HEAD;hp=7c2af6f1a0f9cbeb8d99d546c89d50172520e5a4;hpb=c5169863e1ec3060d3bdc3b8c0317710ce8c3ee3;p=builder.git diff --git a/source/booleanevaluator.h b/source/booleanevaluator.h deleted file mode 100644 index 7c2af6f..0000000 --- a/source/booleanevaluator.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef BOOLEANEVALUATOR_H_ -#define BOOLEANEVALUATOR_H_ - -#include -#include -#include - -class BooleanEvaluator -{ -public: - using Function = std::function; - -private: - Function func; - std::string ops; - std::vector var_stack; - std::vector value_stack; - std::vector op_stack; - bool last_was_op; - -public: - BooleanEvaluator(const Function &, bool = true); - - bool evaluate(const std::string &); -private: - void push_op(char); - bool pop_value(); - void collapse(unsigned); - unsigned precedence(char); - bool is_unary(char); - bool is_logic(char); -}; - -#endif