Generalize set_spec_type module