Re-subimission of https://codereview.chromium.org/1041213003/
[chromium-blink-merge.git] / extensions / browser / extension_function_util.cc
blob4f599800e4e42f43337192346b6c4e080cc6737a
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "extensions/browser/extension_function_util.h"
7 namespace extensions {
9 bool ReadOneOrMoreIntegers(base::Value* value, std::vector<int>* result) {
10 if (value->IsType(base::Value::TYPE_INTEGER)) {
11 int v = -1;
12 if (!value->GetAsInteger(&v))
13 return false;
14 result->push_back(v);
15 return true;
17 } else if (value->IsType(base::Value::TYPE_LIST)) {
18 base::ListValue* values = static_cast<base::ListValue*>(value);
19 for (size_t i = 0; i < values->GetSize(); ++i) {
20 int v = -1;
21 if (!values->GetInteger(i, &v))
22 return false;
23 result->push_back(v);
25 return true;
27 return false;
30 } // namespace extensions