primitive_type seems redundant, since the `class.__name__` value is already set to "ARBN". Couldn't it just check the class name instead of passing a constant?