diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2015-12-20 09:00:55 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2015-12-20 09:00:55 +0100 |
commit | a2190ac74dd4d7080b12bab90e552d7aa81209ef (patch) | |
tree | 8b31f38de9882d18df54cf8d9e0de74167a094eb /vendor/wikimedia/avro/lib/avro/util.php | |
parent | 15e69f7b20b6596b9148030acce5b59993b95a45 (diff) | |
parent | 257401d8b2cf661adf36c84b0e3fd1cf85e33c22 (diff) |
Merge branch 'mw-1.26'
Diffstat (limited to 'vendor/wikimedia/avro/lib/avro/util.php')
-rw-r--r-- | vendor/wikimedia/avro/lib/avro/util.php | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/vendor/wikimedia/avro/lib/avro/util.php b/vendor/wikimedia/avro/lib/avro/util.php new file mode 100644 index 00000000..a43613e9 --- /dev/null +++ b/vendor/wikimedia/avro/lib/avro/util.php @@ -0,0 +1,67 @@ +<?php +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @package Avro + */ + +/** + * Class for static utility methods used in Avro. + * + * @package Avro + */ +class AvroUtil +{ + /** + * Determines whether the given array is an associative array + * (what is termed a map, hash, or dictionary in other languages) + * or a list (an array with monotonically increasing integer indicies + * starting with zero). + * + * @param array $ary array to test + * @returns true if the array is a list and false otherwise. + * + */ + static function is_list($ary) + { + if (is_array($ary)) + { + $i = 0; + foreach ($ary as $k => $v) + { + if ($i !== $k) + return false; + $i++; + } + return true; + } + return false; + } + + /** + * @param array $ary + * @param string $key + * @returns mixed the value of $ary[$key] if it is set, + * and null otherwise. + */ + static function array_value($ary, $key) + { + return isset($ary[$key]) ? $ary[$key] : null; + } +} |