| 291 | } |
| 292 | |
| 293 | void Array::append_array(const Array &p_array) { |
| 294 | ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state."); |
| 295 | |
| 296 | if (!is_typed() || _p->typed.can_reference(p_array._p->typed)) { |
| 297 | _p->array.append_array(p_array._p->array); |
| 298 | return; |
| 299 | } |
| 300 | |
| 301 | Vector<Variant> validated_array = p_array._p->array; |
| 302 | Variant *write = validated_array.ptrw(); |
| 303 | for (int i = 0; i < validated_array.size(); ++i) { |
| 304 | ERR_FAIL_COND(!_p->typed.validate(write[i], "append_array")); |
| 305 | } |
| 306 | |
| 307 | _p->array.append_array(validated_array); |
| 308 | } |
| 309 | |
| 310 | Error Array::resize(int p_new_size) { |
| 311 | ERR_FAIL_COND_V_MSG(_p->read_only, ERR_LOCKED, "Array is in read-only state."); |