public function readMap()
{
$tag = $this->stream->getc();
switch ($tag) {
case Tags::TagNull:
$result = null;
return $result;
case Tags::TagMap:
return $this->readMapWithoutTag();
case Tags::TagRef:
return $this->readRef();
default:
throw $this->unexpectedTag($tag);
}
}