blob: 0c124a4f84cf545ae3a7dec567e8bd98db3c12c5 [file] [log] [blame]
// Copyright 2017 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.
#pragma once
#include <string>
#include <utility>
#include <vector>
#include "string_view.h"
namespace fidl {
class SourceFile {
public:
SourceFile(std::string filename, std::string data);
~SourceFile();
StringView filename() const { return filename_; }
StringView data() const { return data_; }
StringView LineContaining(StringView view, int* line_number_out) const;
private:
std::string filename_;
std::string data_;
std::vector<StringView> lines_;
};
} // namespace fidl