Thu, 31 Dec 2015 18:18:02 +0000
scansion.error: Util for creating error objects
64
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 | local error_mt = { |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 | __tostring = function (e) |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 | return tostring(e.message or ("<Scansion error: "..tostring(self)..">")); |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 | end; |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 | }; |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 | |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 | return { |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
8 | new_error = function (message, data) |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
9 | return setmetatable({ message = message, data = data }, error_mt); |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 | end; |
f0a1f82b8e04
scansion.error: Util for creating error objects
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 | }; |