Google\Cloud\PhpArray::filterValue PHP Метод

filterValue() защищенный Метод

protected filterValue ( $value, DrSlump\Protobuf\Field $field )
$field DrSlump\Protobuf\Field
    protected function filterValue($value, Protobuf\Field $field)
    {
        if ($value instanceof Protobuf\Message) {
            if ($this->isKeyValueMessage($value)) {
                $v = $value->getValue();
                return [$value->getKey() => $v instanceof Protobuf\Message ? $this->encodeMessage($v) : $v];
            }
            if ($value instanceof Struct) {
                $vals = [];
                foreach ($value->getFields() as $field) {
                    $val = $this->filterValue($field->getValue(), $field->descriptor()->getFieldByName('value'));
                    $vals[$field->getKey()] = current($val);
                }
                return $vals;
            }
            if ($value instanceof ListValue) {
                $vals = [];
                foreach ($value->getValuesList() as $val) {
                    $vals[] = current($this->encodeMessage($val));
                }
                return $vals;
            }
        }
        return parent::filterValue($value, $field);
    }