コード例 #1
0
ファイル: type_object.cpp プロジェクト: scottmac/hiphop-dev
bool Object::equal(CObjRef v2) const {
  if (m_px == v2.get())
    return true;
  if (!m_px || !v2.get())
    return false;
  if (isResource() || v2.isResource())
    return false;
  return (v2.get()->o_isClass(m_px->o_getClassName()) &&
          toArray().equal(v2.toArray()));
}
コード例 #2
0
ファイル: type_string.cpp プロジェクト: Bittarman/hiphop-php
bool String::more(CObjRef v2) const {
  if (m_px == NULL || v2.get() == NULL) {
    return HPHP::more(toBoolean(), v2.toBoolean());
  }
  if (v2.isResource()) return false;
  try {
    return more(v2.toString());
  } catch (BadTypeConversionException &e) {
    return false;
  }
}
コード例 #3
0
ファイル: type_object.cpp プロジェクト: n3b/hiphop-php
bool Object::equal(CObjRef v2) const {
    if (m_px == v2.get()) {
        check_collection_compare(m_px);
        return true;
    }
    if (!m_px || !v2.get()) {
        return false;
    }
    check_collection_compare(m_px, v2.get());
    if (isResource() || v2.isResource()) {
        return false;
    }
    return (v2.get()->o_isClass(m_px->o_getClassName()) &&
            toArray().equal(v2.toArray()));
}
コード例 #4
0
bool Object::equal(CObjRef v2) const {
  if (m_px == v2.get()) {
    return true;
  }
  if (!m_px || !v2.get()) {
    return false;
  }
  if (isResource() || v2.isResource()) {
    return false;
  }
  if (v2.get()->getVMClass() != m_px->getVMClass()) {
    return false;
  }
  if (m_px->isCollection()) {
    return collectionEquals(m_px, v2.get());
  }
  return toArray().equal(v2.toArray());
}
コード例 #5
0
ファイル: ext_variable.cpp プロジェクト: devmario/hiphop-php
String f_get_resource_type(CObjRef handle) {
  if (handle.isResource()) {
    return handle->o_getClassName();
  }
  return "";
}