Line data Source code
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_ERRORREPORTER
9 : #define SKSL_ERRORREPORTER
10 :
11 : #include "SkSLPosition.h"
12 :
13 : namespace SkSL {
14 :
15 : /**
16 : * Interface for the compiler to report errors.
17 : */
18 0 : class ErrorReporter {
19 : public:
20 0 : virtual ~ErrorReporter() {}
21 :
22 0 : void error(Position position, const char* msg) {
23 0 : this->error(position, String(msg));
24 0 : }
25 :
26 : virtual void error(Position position, String msg) = 0;
27 :
28 : virtual int errorCount() = 0;
29 : };
30 :
31 : } // namespace
32 :
33 : #endif
|