private function parseScalar($type)
 {
     if (self::LITERAL === $type) {
         $this->parseBoolean();
     } else {
         if (self::INT16 === $type) {
             $this->jsonBinaryDecoderFormatter->formatValue($this->binaryDataReader->readInt16());
         } else {
             if (self::INT32 === $type) {
                 $this->jsonBinaryDecoderFormatter->formatValue($this->binaryDataReader->readInt32());
             } else {
                 if (self::INT64 === $type) {
                     $this->jsonBinaryDecoderFormatter->formatValue($this->binaryDataReader->readInt64());
                 } else {
                     if (self::UINT16 === $type) {
                         $this->jsonBinaryDecoderFormatter->formatValue($this->binaryDataReader->readUInt16());
                     } else {
                         if (self::UINT64 === $type) {
                             $this->jsonBinaryDecoderFormatter->formatValue($this->binaryDataReader->readUInt64());
                         } else {
                             if (self::DOUBLE === $type) {
                                 $this->jsonBinaryDecoderFormatter->formatValue($this->binaryDataReader->readDouble());
                             } else {
                                 if (self::STRING === $type) {
                                     $this->jsonBinaryDecoderFormatter->formatValue($this->binaryDataReader->read($this->readVariableInt()));
                                 } else {
                                     throw new JsonBinaryDecoderException(JsonBinaryDecoderException::UNKNOWN_JSON_TYPE_MESSAGE . $type, JsonBinaryDecoderException::UNKNOWN_JSON_TYPE_CODE);
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
 }