public function offsetUnset($offset)
{
if (is_scalar($offset)) {
unset($this->scalarStore[$offset]);
} else {
if (is_object($offset)) {
$this->objectStore->offsetUnset($offset);
} else {
if (is_array($offset)) {
$index = array_search($offset, $this->arrayKeys, true);
if (false !== $index) {
array_splice($this->arrayKeys, $index, 1);
array_splice($this->arrayValues, $index, 1);
}
}
}
}
}