scansion/error.lua

Sat, 29 Dec 2018 02:52:55 -0500

author
Waqas Hussain <waqas20@gmail.com>
date
Sat, 29 Dec 2018 02:52:55 -0500
changeset 163
0e2150680a25
parent 111
25530dccf696
permissions
-rw-r--r--

parser: Prefix parse errors with "ParserError: "

local error_mt = {
	__tostring = function (e)
		return tostring(e.text or e.type or ("<Scansion error: "..tostring(e)..">"));
	end;
	__name = "scansion error";
};

return {
	new_error = function (type, data)
		return setmetatable({ type = type, text = data.text, data = data }, error_mt);
	end;
	is = function (err)
		return getmetatable(err) == error_mt;
	end;
};

mercurial