From 61515a188897c99077498b272cb8d28fc92664f9 Mon Sep 17 00:00:00 2001 From: Daniel Lemire Date: Fri, 13 Dec 2024 21:28:27 -0500 Subject: [PATCH 1/2] fix builds --- include/ada/parser.h | 4 ---- include/ada/url_aggregator.h | 2 +- include/ada/url_pattern-inl.h | 4 ++++ include/ada/url_pattern.h | 6 +++--- src/implementation.cpp | 6 ------ src/parser.cpp | 10 +++++++++- 6 files changed, 17 insertions(+), 15 deletions(-) diff --git a/include/ada/parser.h b/include/ada/parser.h index 8b7c562ff..7829d820d 100644 --- a/include/ada/parser.h +++ b/include/ada/parser.h @@ -51,10 +51,6 @@ extern template url_aggregator parse_url_impl( extern template url parse_url_impl(std::string_view user_input, const url* base_url); -tl::expected parse_url_pattern( - std::variant input, - const std::string_view* base_url = nullptr, - const url_pattern_options* options = nullptr); } // namespace ada::parser diff --git a/include/ada/url_aggregator.h b/include/ada/url_aggregator.h index 0ba921814..82cad005f 100644 --- a/include/ada/url_aggregator.h +++ b/include/ada/url_aggregator.h @@ -222,7 +222,7 @@ struct url_aggregator : url_base { friend url_aggregator parser::parse_url_impl( std::string_view, const url_aggregator *); // url_pattern methods - friend tl::expected parse_url_pattern( + friend tl::expected parse_url_pattern_impl( std::variant input, const std::string_view *base_url, const url_pattern_options *options); diff --git a/include/ada/url_pattern-inl.h b/include/ada/url_pattern-inl.h index 4f35acf61..dc97b0ee4 100644 --- a/include/ada/url_pattern-inl.h +++ b/include/ada/url_pattern-inl.h @@ -12,6 +12,10 @@ namespace ada { +inline bool url_pattern_component::has_regexp_groups() const noexcept ada_lifetime_bound { + return has_regexp_groups_; +} + inline std::string_view url_pattern_component::get_pattern() const noexcept ada_lifetime_bound { return pattern; diff --git a/include/ada/url_pattern.h b/include/ada/url_pattern.h index 86463b90a..3887d0f58 100644 --- a/include/ada/url_pattern.h +++ b/include/ada/url_pattern.h @@ -20,7 +20,7 @@ enum class url_pattern_errors : uint8_t { type_error }; namespace parser { template -tl::expected parse_url_pattern( +tl::expected parse_url_pattern_impl( std::variant input, const std::string_view* base_url, const url_pattern_options* options); } @@ -202,7 +202,7 @@ class url_pattern_component { std::string_view get_regexp() const noexcept ada_lifetime_bound; const std::vector& get_group_name_list() const noexcept ada_lifetime_bound; - bool has_regexp_groups() const noexcept ada_lifetime_bound; + inline bool has_regexp_groups() const noexcept ada_lifetime_bound; private: // The normalized pattern for this component. @@ -299,7 +299,7 @@ class url_pattern { template friend tl::expected - parser::parse_url_pattern( + parser::parse_url_pattern_impl( std::variant input, const std::string_view* base_url, const url_pattern_options* options); }; diff --git a/src/implementation.cpp b/src/implementation.cpp index 023828ff1..39b2653c1 100644 --- a/src/implementation.cpp +++ b/src/implementation.cpp @@ -68,12 +68,6 @@ bool can_parse(std::string_view input, const std::string_view* base_input) { return result.is_valid; } -ada_warn_unused tl::expected parse_url_pattern( - std::variant input, - const std::string_view* base_url, const url_pattern_options* options) { - return ada::parser::parse_url_pattern(std::move(input), base_url, options); -} - ada_warn_unused std::string to_string(ada::encoding_type type) { switch (type) { case ada::encoding_type::UTF8: diff --git a/src/parser.cpp b/src/parser.cpp index f12a10530..6dabc391c 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -900,7 +900,7 @@ result_type parse_url_impl(std::string_view user_input, } template <> -tl::expected parse_url_pattern( +tl::expected parse_url_pattern_impl( std::variant input, const std::string_view* base_url, const url_pattern_options* options) { // Let init be null. @@ -1084,3 +1084,11 @@ template url parse_url(std::string_view user_input, template url_aggregator parse_url( std::string_view user_input, const url_aggregator* base_url = nullptr); } // namespace ada::parser + +namespace ada { +ada_warn_unused tl::expected parse_url_pattern( + std::variant input, + const std::string_view* base_url, const url_pattern_options* options) { + return ada::parser::parse_url_pattern_impl(std::move(input), base_url, options); +} +} // namespace ada \ No newline at end of file From 556705f00e38ab08f2e5b5a58658646f02e9af0c Mon Sep 17 00:00:00 2001 From: Daniel Lemire Date: Fri, 13 Dec 2024 21:29:37 -0500 Subject: [PATCH 2/2] adding empty line --- src/parser.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/parser.cpp b/src/parser.cpp index 6dabc391c..8ef9aa849 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -1091,4 +1091,4 @@ ada_warn_unused tl::expected parse_url_pattern( const std::string_view* base_url, const url_pattern_options* options) { return ada::parser::parse_url_pattern_impl(std::move(input), base_url, options); } -} // namespace ada \ No newline at end of file +} // namespace ada