From fe3d4ce758822d65a0a5d617b7b77df2dbc972d8 Mon Sep 17 00:00:00 2001 From: Ben Longbons Date: Sun, 16 Mar 2014 14:55:57 -0700 Subject: Implement new magic frontend using sexpr --- src/io/line.hpp | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'src/io/line.hpp') diff --git a/src/io/line.hpp b/src/io/line.hpp index 321cdf7..a9e8944 100644 --- a/src/io/line.hpp +++ b/src/io/line.hpp @@ -40,11 +40,11 @@ namespace io // 1-based uint16_t line, column; - AString message_str(ZString cat, ZString msg); - void message(ZString cat, ZString msg); - void note(ZString msg) { message("note", msg); } - void warning(ZString msg) { message("warning", msg); } - void error(ZString msg) { message("error", msg); } + AString message_str(ZString cat, ZString msg) const; + void message(ZString cat, ZString msg) const; + void note(ZString msg) const { message("note", msg); } + void warning(ZString msg) const { message("warning", msg); } + void error(ZString msg) const { message("error", msg); } }; // psst, don't tell anyone @@ -59,6 +59,17 @@ namespace io } }; + struct LineSpan + { + LineChar begin, end; + + AString message_str(ZString cat, ZString msg) const; + void message(ZString cat, ZString msg) const; + void note(ZString msg) const { message("note", msg); } + void warning(ZString msg) const { message("warning", msg); } + void error(ZString msg) const { message("error", msg); } + }; + class LineReader { protected: -- cgit v1.2.3-70-g09d2