blob: e0ad2362b663e8d7269f82c8185a3ef7931096ab [file] [log] [blame]
// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef TOOLS_SYMBOL_INDEX_READER_H_
#define TOOLS_SYMBOL_INDEX_READER_H_
#include <istream>
#include <string>
#include <vector>
#include "tools/symbol-index/error.h"
namespace symbol_index {
// Reads a text input stream line by line and separates each line with the given separator.
// Blank lines and comments are ignored.
class Reader {
public:
explicit Reader(char column_separator) : column_separator_(column_separator) {}
Error Read(std::istream& input, const std::string& input_name,
std::vector<std::vector<std::string>>* result);
private:
char column_separator_;
};
} // namespace symbol_index
#endif // TOOLS_SYMBOL_INDEX_READER_H_