def _load_values()

in tools/rossim/rosigen.py [0:0]


    def _load_values(self, msg, val):
        for field in msg.get_fields_and_field_types():
            field_val = getattr(msg, field)
            if type(field_val) in self.PRIMITIVE_TYPES:
                self._set_value(msg, field, val[field])
            elif self._is_primitive_list(field_val):
                length = len(field_val)
                if length == 0:
                    # dynamic size take length of input
                    length = len(val[field])
                for i in range(length):
                    self._set_value(field_val, f"[{i}]", val[field][i])
            elif self._is_list(field_val):
                for i in range(len(field_val)):
                    self._load_values(field_val[i], val[field][i])
            else:
                self._load_values(field_val, val[field])