TypedValue* SharedMap::nvGetCell(int64 k, bool error) const { int index = m_arr->getIndex(k); if (index != -1) { return getValueRef(index).getTypedAccessor(); } return error ? nvGetNotFound(k) : NULL; }
TypedValue* SharedMap::nvGetCell(const StringData* key, bool error) const { StrNR k(key); int index = m_arr->getIndex(k); if (index != -1) { return getValueRef(index).getTypedAccessor(); } return error ? nvGetNotFound(key) : NULL; }
TypedValue* SharedMap::nvGetCell(const StringData* key) const { int index = m_arr->getIndex(key); return index != -1 ? getValueRef(index).getTypedAccessor() : nvGetNotFound(key); }
TypedValue* SharedMap::nvGetCell(int64 k) const { int index = m_arr->getIndex(k); return index != -1 ? getValueRef(index).getTypedAccessor() : nvGetNotFound(k); }
TypedValue* ArrayData::nvGetCell(const StringData* key) const { TypedValue* tv = (TypedValue*)&get(key, false); return LIKELY(tv != (TypedValue*)&null_variant) ? tvToCell(tv) : nvGetNotFound(key); }
TypedValue* ArrayData::nvGetCell(int64 k) const { TypedValue* tv = (TypedValue*)&get(k, false); return LIKELY(tv != (TypedValue*)&null_variant) ? tvToCell(tv) : nvGetNotFound(k); }
TypedValue* ArrayData::nvGetCell(const StringData* key, bool error) const { StrNR k(key); return exists(k) ? get(k, false).getTypedAccessor() : error ? nvGetNotFound(key) : NULL; }
TypedValue* ArrayData::nvGetCell(int64 k, bool error) const { return exists(k) ? get(k, false).getTypedAccessor() : error ? nvGetNotFound(k) : NULL; }