Gyoji Compiler
Loading...
Searching...
No Matches
source-reference.hpp
1/* Copyright 2025 Jonathan S. Arney
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * https://github.com/jarney/gyoji/blob/master/LICENSE
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15#pragma once
16
17#include <string>
18
19namespace Gyoji::context {
31 public:
33 const std::string & _filename,
34 size_t _line,
35 size_t _column,
36 size_t _length
37 );
38 SourceReference(const SourceReference & _other);
43 const std::string & get_filename() const;
44 size_t get_line() const;
45 size_t get_column() const;
46 size_t get_length() const;
47 private:
48 const std::string & filename;
49 size_t line;
50 size_t column;
51 size_t length;
52 };
53};
References a location in the source-file.
Definition source-reference.hpp:30
~SourceReference()
Definition source-reference.cpp:39
The context namespace deals with objects that should last the entire scope of compilation.
Definition gyoji-context.hpp:30