//
//  TsvParser.hpp
//  eagle0
//
//  Created by Dan Crosby on 4/7/18.
//  Copyright © 2018 none. All rights reserved.
//

#ifndef TsvParser_hpp
#define TsvParser_hpp

#include <string>
#include <unordered_map>
#include <vector>

typedef std::unordered_map<std::string, std::string> StringMap;

// Parses a TSV, with the first column becoming map keys and subsequent columns becoming values
// for different maps in the returned vector.
class TsvParser {
public:
    std::vector<StringMap> ParseTsv(std::string tsv, bool allowUneven = false);
    std::vector<StringMap> ParseColumnEntryTsv(std::string tsv);
};

#endif /* TsvParser_hpp */
