1 // Copyright (c) 2012 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. 4 5 #include "chrome/browser/extensions/extension_function_util.h" 6 7 namespace extensions { 8 ReadOneOrMoreIntegers(base::Value * value,std::vector<int> * result)9bool ReadOneOrMoreIntegers(base::Value* value, std::vector<int>* result) { 10 if (value->IsType(Value::TYPE_INTEGER)) { 11 int v = -1; 12 if (!value->GetAsInteger(&v)) 13 return false; 14 result->push_back(v); 15 return true; 16 17 } else if (value->IsType(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); 24 } 25 return true; 26 } 27 return false; 28 } 29 30 } // namespace extensions 31