Lexesis/include/Lexesis/inputparser.h

23 lines
518 B
C++

#pragma once
#ifndef INPUT_PARSER_H
#define INPUT_PARSER_H
#include <istream>
#include <vector>
#include <string>
namespace lxs {
struct DFA;
struct ENFA;
class InputParser {
public:
static DFA parseInput(std::istream& is);
private:
static std::vector<std::pair<std::string,std::string> > parseLines(std::istream &is);
static std::vector<ENFA> linesToEnfa(std::vector<std::pair<std::string,std::string> > &input);
};
}
#endif // INPUT_PARSER_H