code: function _parse(type, obj, options)
  {
      if (!obj) return _checkResult(type, lib.newError("empty " + type), obj, options);
      try {
          obj = _parseResult(type, obj, options);
      } catch(err) {
          obj = _checkResult(type, err, obj, options);
      }
      return obj;
  }
docs: Combined parser with type validation