in lib/Debugger.Protocol/Generated/protocol/Runtime.cpp [1467:1518]
DispatchResponse::Status DispatcherImpl::getProperties(int callId, std::unique_ptr<DictionaryValue> requestMessageObject, ErrorSupport* errors)
{
// Prepare input parameters.
protocol::DictionaryValue* object = DictionaryValue::cast(requestMessageObject->get("params"));
errors->push();
protocol::Value* objectIdValue = object ? object->get("objectId") : nullptr;
errors->setName("objectId");
String in_objectId = ValueConversions<String>::fromValue(objectIdValue, errors);
protocol::Value* ownPropertiesValue = object ? object->get("ownProperties") : nullptr;
Maybe<bool> in_ownProperties;
if (ownPropertiesValue) {
errors->setName("ownProperties");
in_ownProperties = ValueConversions<bool>::fromValue(ownPropertiesValue, errors);
}
protocol::Value* accessorPropertiesOnlyValue = object ? object->get("accessorPropertiesOnly") : nullptr;
Maybe<bool> in_accessorPropertiesOnly;
if (accessorPropertiesOnlyValue) {
errors->setName("accessorPropertiesOnly");
in_accessorPropertiesOnly = ValueConversions<bool>::fromValue(accessorPropertiesOnlyValue, errors);
}
protocol::Value* generatePreviewValue = object ? object->get("generatePreview") : nullptr;
Maybe<bool> in_generatePreview;
if (generatePreviewValue) {
errors->setName("generatePreview");
in_generatePreview = ValueConversions<bool>::fromValue(generatePreviewValue, errors);
}
errors->pop();
if (errors->hasErrors()) {
reportProtocolError(callId, DispatchResponse::kInvalidParams, kInvalidParamsString, errors);
return DispatchResponse::kError;
}
// Declare output parameters.
std::unique_ptr<protocol::Array<protocol::Runtime::PropertyDescriptor>> out_result;
Maybe<protocol::Array<protocol::Runtime::InternalPropertyDescriptor>> out_internalProperties;
Maybe<protocol::Runtime::ExceptionDetails> out_exceptionDetails;
std::unique_ptr<DispatcherBase::WeakPtr> weak = weakPtr();
DispatchResponse response = m_backend->getProperties(in_objectId, std::move(in_ownProperties), std::move(in_accessorPropertiesOnly), std::move(in_generatePreview), &out_result, &out_internalProperties, &out_exceptionDetails);
if (response.status() == DispatchResponse::kFallThrough)
return response.status();
std::unique_ptr<protocol::DictionaryValue> result = DictionaryValue::create();
if (response.status() == DispatchResponse::kSuccess) {
result->setValue("result", ValueConversions<protocol::Array<protocol::Runtime::PropertyDescriptor>>::toValue(out_result.get()));
if (out_internalProperties.isJust())
result->setValue("internalProperties", ValueConversions<protocol::Array<protocol::Runtime::InternalPropertyDescriptor>>::toValue(out_internalProperties.fromJust()));
if (out_exceptionDetails.isJust())
result->setValue("exceptionDetails", ValueConversions<protocol::Runtime::ExceptionDetails>::toValue(out_exceptionDetails.fromJust()));
}
if (weak->get())
weak->get()->sendResponse(callId, response, std::move(result));
return response.status();
}