浏览代码

Avoid extra copy/validation of keys in Dictionary::has_all

Updated Dictionary::has_all to check its HashMap directly for each validated key instead of going through Dictionary::has, to avoid additional copy/validation of each key.
aaronp64 4 月之前
父节点
当前提交
e4bd611e19
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      core/variant/dictionary.cpp

+ 1 - 1
core/variant/dictionary.cpp

@@ -225,7 +225,7 @@ bool Dictionary::has_all(const Array &p_keys) const {
 	for (int i = 0; i < p_keys.size(); i++) {
 		Variant key = p_keys[i];
 		ERR_FAIL_COND_V(!_p->typed_key.validate(key, "use 'has_all'"), false);
-		if (!has(key)) {
+		if (!_p->variant_map.has(key)) {
 			return false;
 		}
 	}