webmcp
annotate framework/env/convert/from_human.lua @ 438:ea8419658535
Another change to make <db_object>:try_save() work properly with "document_column"
(use "_col" proxy also for accessing self._col[primary_key.json_doc])
(use "_col" proxy also for accessing self._col[primary_key.json_doc])
author | jbe |
---|---|
date | Wed Jan 20 21:06:07 2016 +0100 (2016-01-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 |