aboutsummaryrefslogtreecommitdiff
path: root/php/src
diff options
context:
space:
mode:
Diffstat (limited to 'php/src')
-rw-r--r--php/src/Google/Protobuf/Internal/MapField.php31
-rw-r--r--php/src/Google/Protobuf/Internal/RepeatedField.php10
2 files changed, 23 insertions, 18 deletions
diff --git a/php/src/Google/Protobuf/Internal/MapField.php b/php/src/Google/Protobuf/Internal/MapField.php
index f7d7b710..1b2b0cf0 100644
--- a/php/src/Google/Protobuf/Internal/MapField.php
+++ b/php/src/Google/Protobuf/Internal/MapField.php
@@ -156,15 +156,22 @@ class MapField implements \ArrayAccess, \IteratorAggregate, \Countable
$this->checkKey($this->key_type, $key);
switch ($this->value_type) {
+ case GPBType::SFIXED32:
+ case GPBType::SINT32:
case GPBType::INT32:
+ case GPBType::ENUM:
GPBUtil::checkInt32($value);
break;
+ case GPBType::FIXED32:
case GPBType::UINT32:
GPBUtil::checkUint32($value);
break;
+ case GPBType::SFIXED64:
+ case GPBType::SINT64:
case GPBType::INT64:
GPBUtil::checkInt64($value);
break;
+ case GPBType::FIXED64:
case GPBType::UINT64:
GPBUtil::checkUint64($value);
break;
@@ -249,36 +256,24 @@ class MapField implements \ArrayAccess, \IteratorAggregate, \Countable
private function checkKey($key_type, &$key)
{
switch ($key_type) {
+ case GPBType::SFIXED32:
+ case GPBType::SINT32:
case GPBType::INT32:
GPBUtil::checkInt32($key);
break;
+ case GPBType::FIXED32:
case GPBType::UINT32:
GPBUtil::checkUint32($key);
break;
+ case GPBType::SFIXED64:
+ case GPBType::SINT64:
case GPBType::INT64:
GPBUtil::checkInt64($key);
break;
- case GPBType::UINT64:
- GPBUtil::checkUint64($key);
- break;
case GPBType::FIXED64:
+ case GPBType::UINT64:
GPBUtil::checkUint64($key);
break;
- case GPBType::FIXED32:
- GPBUtil::checkUint32($key);
- break;
- case GPBType::SFIXED64:
- GPBUtil::checkInt64($key);
- break;
- case GPBType::SFIXED32:
- GPBUtil::checkInt32($key);
- break;
- case GPBType::SINT64:
- GPBUtil::checkInt64($key);
- break;
- case GPBType::SINT32:
- GPBUtil::checkInt32($key);
- break;
case GPBType::BOOL:
GPBUtil::checkBool($key);
break;
diff --git a/php/src/Google/Protobuf/Internal/RepeatedField.php b/php/src/Google/Protobuf/Internal/RepeatedField.php
index e0ddef50..e9b92d8d 100644
--- a/php/src/Google/Protobuf/Internal/RepeatedField.php
+++ b/php/src/Google/Protobuf/Internal/RepeatedField.php
@@ -141,15 +141,22 @@ class RepeatedField implements \ArrayAccess, \IteratorAggregate, \Countable
public function offsetSet($offset, $value)
{
switch ($this->type) {
+ case GPBType::SFIXED32:
+ case GPBType::SINT32:
case GPBType::INT32:
+ case GPBType::ENUM:
GPBUtil::checkInt32($value);
break;
+ case GPBType::FIXED32:
case GPBType::UINT32:
GPBUtil::checkUint32($value);
break;
+ case GPBType::SFIXED64:
+ case GPBType::SINT64:
case GPBType::INT64:
GPBUtil::checkInt64($value);
break;
+ case GPBType::FIXED64:
case GPBType::UINT64:
GPBUtil::checkUint64($value);
break;
@@ -162,6 +169,9 @@ class RepeatedField implements \ArrayAccess, \IteratorAggregate, \Countable
case GPBType::BOOL:
GPBUtil::checkBool($value);
break;
+ case GPBType::BYTES:
+ GPBUtil::checkString($value, false);
+ break;
case GPBType::STRING:
GPBUtil::checkString($value, true);
break;