mirror of
https://github.com/apache/cordova-android.git
synced 2025-02-01 02:12:58 +08:00
73 lines
1.5 KiB
JavaScript
73 lines
1.5 KiB
JavaScript
|
/**
|
||
|
* Copyright 2011 Rackspace
|
||
|
*
|
||
|
* Licensed 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.
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
/**
|
||
|
* @param {Object} hash.
|
||
|
* @param {Array} ignored.
|
||
|
*/
|
||
|
function items(hash, ignored) {
|
||
|
ignored = ignored || null;
|
||
|
var k, rv = [];
|
||
|
|
||
|
function is_ignored(key) {
|
||
|
if (!ignored || ignored.length === 0) {
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
return ignored.indexOf(key);
|
||
|
}
|
||
|
|
||
|
for (k in hash) {
|
||
|
if (hash.hasOwnProperty(k) && !(is_ignored(ignored))) {
|
||
|
rv.push([k, hash[k]]);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return rv;
|
||
|
}
|
||
|
|
||
|
|
||
|
function findall(re, str) {
|
||
|
var match, matches = [];
|
||
|
|
||
|
while ((match = re.exec(str))) {
|
||
|
matches.push(match);
|
||
|
}
|
||
|
|
||
|
return matches;
|
||
|
}
|
||
|
|
||
|
function merge(a, b) {
|
||
|
var c = {}, attrname;
|
||
|
|
||
|
for (attrname in a) {
|
||
|
if (a.hasOwnProperty(attrname)) {
|
||
|
c[attrname] = a[attrname];
|
||
|
}
|
||
|
}
|
||
|
for (attrname in b) {
|
||
|
if (b.hasOwnProperty(attrname)) {
|
||
|
c[attrname] = b[attrname];
|
||
|
}
|
||
|
}
|
||
|
return c;
|
||
|
}
|
||
|
|
||
|
exports.items = items;
|
||
|
exports.findall = findall;
|
||
|
exports.merge = merge;
|