1 /*
2  * Copyright 2016 Google Inc.
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 
8 #ifndef SKSL_POSITION
9 #define SKSL_POSITION
10 
11 #include "SkSLUtil.h"
12 
13 namespace SkSL {
14 
15 /**
16  * Represents a position in the source code. Both line and column are one-based. Column is currently
17  * ignored.
18  */
19 struct Position {
20     Position()
21     : fLine(-1)
22     , fColumn(-1) {}
23 
24     Position(int line, int column)
25     : fLine(line)
26     , fColumn(column) {}
27 
28     String description() const {
29         return to_string(fLine);
30     }
31 
32     int fLine;
33     int fColumn;
34 };
35 
36 } // namespace
37 
38 #endif
39