Например, мы можем создать карту типов "out" для t_demo и вернуть хеш, заполненный выбранными членами этой структуры:
%typemap(out) t_demo {
HV* tmp = newHV();
SV* t_data = newSViv($1.int_field1);
hv_store(tmp, "int_field1", 4, t_data, 0);
$result = sv_2mortal(newRV_noinc((SV*) tmp));
argvi++;
}
Многие другие случаи описаны в руководстве по swig.