--- /dev/null
+TYPEMAP
+varspec_t T_VARSPEC
+vartype_t T_VARTYPE
+
+INPUT
+T_VARSPEC
+ if (SvPOK($arg))
+ _deconstruct_variable_name(SvPV_nolen($arg), &$var);
+ else if (SvROK($arg) && SvTYPE(SvRV($arg)) == SVt_PVHV)
+ _deconstruct_variable_hash((HV*)SvRV($arg), &$var);
+ else
+ croak(\"varspec must be a string or a hashref\");
+
+T_VARTYPE
+ if (!SvPOK($arg))
+ croak(\"vartype must be a string\");
+ $var = string_to_vartype(SvPV_nolen($arg));