annotate framework/env/convert/from_human.lua @ 507:ac5f7a40b8c4
Extended documentation (mostly on "Configuration, pre-fork and post-fork initializers")
author |
jbe |
date |
Sun Aug 20 23:12:16 2017 +0200 (2017-08-20) |
parents |
9fdfb27f8e67 |
children |
|
rev |
line source |
jbe/bsw@0
|
1 function convert.from_human(str, typ)
|
jbe/bsw@0
|
2 if not typ then
|
jbe/bsw@0
|
3 error("Using convert.from_human(...) to convert a human readable string to an internal data type needs a type to be specified as second parameter.")
|
jbe/bsw@0
|
4 end
|
jbe/bsw@0
|
5 if not str then return nil end -- TODO: decide, if an error should be raised instead
|
jbe/bsw@0
|
6 local type_symbol = convert._type_symbol_mappings[typ]
|
jbe/bsw@0
|
7 if not type_symbol then
|
jbe/bsw@0
|
8 error("Unrecognized type reference passed to convert.from_human(...).")
|
jbe/bsw@0
|
9 end
|
jbe/bsw@0
|
10 local converter = convert["_from_human_to_" .. type_symbol]
|
jbe/bsw@0
|
11 if not converter then
|
jbe/bsw@0
|
12 error("Type reference passed to convert.from_human(...) was recognized, but the converter function is not existent.")
|
jbe/bsw@0
|
13 end
|
jbe/bsw@0
|
14 return converter(str)
|
jbe/bsw@0
|
15 end |