| Index: extensions/renderer/api_signature.h
|
| diff --git a/extensions/renderer/api_signature.h b/extensions/renderer/api_signature.h
|
| index c2f3ab888749c7824f9c4c5e511a43621d2fb0d7..0e1451d73d48566015c26c800fe76d78e4ef568f 100644
|
| --- a/extensions/renderer/api_signature.h
|
| +++ b/extensions/renderer/api_signature.h
|
| @@ -30,37 +30,27 @@ class APISignature {
|
| APISignature(const base::ListValue& specification);
|
| ~APISignature();
|
|
|
| + // Parses |arguments| against this signature, and populates |args_out| with
|
| + // the v8 values (performing no conversion). The resulting vector may differ
|
| + // from the list of arguments passed in because it will include null-filled
|
| + // optional arguments.
|
| + // Returns true if the arguments were successfully parsed and converted.
|
| + bool ParseArgumentsToV8(gin::Arguments* arguments,
|
| + const ArgumentSpec::RefMap& type_refs,
|
| + std::vector<v8::Local<v8::Value>>* args_out,
|
| + std::string* error) const;
|
| +
|
| // Parses |arguments| against this signature, converting to a base::ListValue.
|
| - // If the arguments don't match, null is returned and |error| is populated.
|
| - std::unique_ptr<base::ListValue> ParseArguments(
|
| - gin::Arguments* arguments,
|
| - const ArgumentSpec::RefMap& type_refs,
|
| - v8::Local<v8::Function>* callback_out,
|
| - std::string* error) const;
|
| + // Returns true if the arguments were successfully parsed and converted, and
|
| + // populates |args_out| and |callback_out| with the JSON arguments and
|
| + // callback values, respectively. On failure, returns false populates |error|.
|
| + bool ParseArgumentsToJSON(gin::Arguments* arguments,
|
| + const ArgumentSpec::RefMap& type_refs,
|
| + std::unique_ptr<base::ListValue>* args_out,
|
| + v8::Local<v8::Function>* callback_out,
|
| + std::string* error) const;
|
|
|
| private:
|
| - // Attempts to match an argument from |arguments| to the given |spec|.
|
| - // If the next argmument does not match and |spec| is optional, a null
|
| - // base::Value is returned.
|
| - // If the argument matches, |arguments| is advanced and the converted value is
|
| - // returned.
|
| - // If the argument does not match and it is not optional, returns null and
|
| - // populates error.
|
| - std::unique_ptr<base::Value> ParseArgument(
|
| - const ArgumentSpec& spec,
|
| - v8::Local<v8::Context> context,
|
| - gin::Arguments* arguments,
|
| - const ArgumentSpec::RefMap& type_refs,
|
| - std::string* error) const;
|
| -
|
| - // Parses the callback from |arguments| according to |callback_spec|. Since
|
| - // the callback isn't converted into a base::Value, this is different from
|
| - // ParseArgument() above.
|
| - bool ParseCallback(gin::Arguments* arguments,
|
| - const ArgumentSpec& callback_spec,
|
| - std::string* error,
|
| - v8::Local<v8::Function>* callback_out) const;
|
| -
|
| // The list of expected arguments.
|
| std::vector<std::unique_ptr<ArgumentSpec>> signature_;
|
|
|
|
|