From da5f0160d97393071f90660799b3033756fad2e1 Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Fri, 4 Nov 2022 00:00:34 +0100 Subject: [PATCH] more conversions --- libsolidity/interface/StandardCompiler.cpp | 5 +++-- libsolidity/lsp/DocumentHoverHandler.cpp | 6 +++--- libsolidity/lsp/DocumentHoverHandler.h | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/libsolidity/interface/StandardCompiler.cpp b/libsolidity/interface/StandardCompiler.cpp index 34232e359..6484dcc37 100644 --- a/libsolidity/interface/StandardCompiler.cpp +++ b/libsolidity/interface/StandardCompiler.cpp @@ -509,7 +509,7 @@ std::optional checkMetadataKeys(Json const& _input) { if (_input.is_object()) { - if (_input.contains("appendCBOR") && !_input["appendCBOR"].is_boolean)) + if (_input.contains("appendCBOR") && !_input["appendCBOR"].is_boolean()) return formatFatalError(Error::Type::JSONError, "\"settings.metadata.appendCBOR\" must be Boolean"); if (_input.contains("useLiteralContent") && !_input["useLiteralContent"].is_boolean()) return formatFatalError(Error::Type::JSONError, "\"settings.metadata.useLiteralContent\" must be Boolean"); @@ -585,7 +585,8 @@ std::variant parseOptimizerSettings(Json const& _jsonIn { if (!_jsonInput["runs"].is_number_unsigned()) return formatFatalError(Error::Type::JSONError, "The \"runs\" setting must be an unsigned number."); - settings.expectedExecutionsPerDeployment = _jsonInput["runs"].get(); + // TODO: check size + settings.expectedExecutionsPerDeployment = static_cast(_jsonInput["runs"].get()); } if (_jsonInput.contains("details")) diff --git a/libsolidity/lsp/DocumentHoverHandler.cpp b/libsolidity/lsp/DocumentHoverHandler.cpp index 628b62fa1..115e1cde7 100644 --- a/libsolidity/lsp/DocumentHoverHandler.cpp +++ b/libsolidity/lsp/DocumentHoverHandler.cpp @@ -58,7 +58,7 @@ struct MarkdownBuilder } -void DocumentHoverHandler::operator()(MessageID _id, Json::Value const& _args) +void DocumentHoverHandler::operator()(MessageID _id, Json const& _args) { auto const [sourceUnitName, lineColumn] = HandlerBase(*this).extractSourceUnitNameAndLineColumn(_args); auto const [sourceNode, sourceOffset] = m_server.astNodeAndOffsetAtSourceLocation(sourceUnitName, lineColumn); @@ -111,11 +111,11 @@ void DocumentHoverHandler::operator()(MessageID _id, Json::Value const& _args) if (tooltipText.empty()) { - client().reply(_id, Json::nullValue); + client().reply(_id, Json{}); return; } - Json::Value reply = Json::objectValue; + Json reply = Json::object(); reply["range"] = rangeToHighlight; reply["contents"]["kind"] = "markdown"; reply["contents"]["value"] = std::move(tooltipText); diff --git a/libsolidity/lsp/DocumentHoverHandler.h b/libsolidity/lsp/DocumentHoverHandler.h index 9bb4084c2..e35e85609 100644 --- a/libsolidity/lsp/DocumentHoverHandler.h +++ b/libsolidity/lsp/DocumentHoverHandler.h @@ -26,7 +26,7 @@ class DocumentHoverHandler: public HandlerBase public: using HandlerBase::HandlerBase; - void operator()(MessageID, Json::Value const&); + void operator()(MessageID, Json const&); }; }