#ifndef __RULESET_PARSER__ #define __RULESET_PARSER__ #include #include class Rule; class RulesetParser { public: RulesetParser(); RulesetParser(const QString &filename); bool isValid() const { return _is_valid; } int rulesNumber() { return _rules_list.size(); } const Rule * operator[](int index); const QList & rules() const { return _rules_list; } protected: int process_line(QString &line); Rule * process_rule(QString &buffer, const QString &raw_buffer); private: QString _buffer; QString _raw_buffer; QList _rules_list; bool _is_valid; }; #endif /* __RULESET_PARSER__ */