2 * Copyright (c) 2002 Robert Collins.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * A copy of the GNU General Public License can be found at
12 * Written by Robert Collins <robertc@hotmail.com>
16 #ifndef SETUP_INIPARSEFEEDBACK_H
17 #define SETUP_INIPARSEFEEDBACK_H
21 /* Strategy for feedback from IniParsing.
22 * Used by the builder or parsing classes to send feedback that users need
23 * but that should not interrupt parsing.
24 * Fatal errors are thrown as exceptions.
26 class IniParseFeedback
29 virtual void progress (unsigned long const, unsigned long const) = 0;
30 virtual void iniName (const std::string
& ) = 0;
31 virtual void babble (const std::string
& ) const = 0;
32 virtual void warning (const std::string
& ) const = 0;
33 virtual void show_errors () const = 0;
34 virtual void note_error(int lineno
, const std::string
&error
) = 0;
35 virtual bool has_errors () const = 0;
38 #endif /* SETUP_INIPARSEFEEDBACK_H */