Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build fixes #801

Merged
merged 2 commits into from
Dec 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions include/ada/parser.h
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,6 @@ extern template url_aggregator parse_url_impl<url_aggregator>(
extern template url parse_url_impl<url>(std::string_view user_input,
const url* base_url);

tl::expected<url_pattern, url_pattern_errors> parse_url_pattern(
std::variant<std::string_view, url_pattern_init> input,
const std::string_view* base_url = nullptr,
const url_pattern_options* options = nullptr);

} // namespace ada::parser

Expand Down
2 changes: 1 addition & 1 deletion include/ada/url_aggregator.h
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,7 @@ struct url_aggregator : url_base {
friend url_aggregator parser::parse_url_impl<url_aggregator, false>(
std::string_view, const url_aggregator *);
// url_pattern methods
friend tl::expected<url_pattern, url_pattern_errors> parse_url_pattern(
friend tl::expected<url_pattern, url_pattern_errors> parse_url_pattern_impl(
std::variant<std::string_view, url_pattern_init> input,
const std::string_view *base_url, const url_pattern_options *options);

Expand Down
4 changes: 4 additions & 0 deletions include/ada/url_pattern-inl.h
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
6 changes: 3 additions & 3 deletions include/ada/url_pattern.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ enum class url_pattern_errors : uint8_t { type_error };
namespace parser {
template <typename result_type, typename url_pattern_init,
typename url_pattern_options>
tl::expected<result_type, url_pattern_errors> parse_url_pattern(
tl::expected<result_type, url_pattern_errors> parse_url_pattern_impl(
std::variant<std::string_view, url_pattern_init> input,
const std::string_view* base_url, const url_pattern_options* options);
}
Expand Down Expand Up @@ -202,7 +202,7 @@ class url_pattern_component {
std::string_view get_regexp() const noexcept ada_lifetime_bound;
const std::vector<std::string>& 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.
Expand Down Expand Up @@ -299,7 +299,7 @@ class url_pattern {
template <typename result_type, typename url_pattern_init,
typename url_pattern_options>
friend tl::expected<result_type, url_pattern_errors>
parser::parse_url_pattern(
parser::parse_url_pattern_impl(
std::variant<std::string_view, url_pattern_init> input,
const std::string_view* base_url, const url_pattern_options* options);
};
Expand Down
6 changes: 0 additions & 6 deletions src/implementation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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<url_pattern, url_pattern_errors> parse_url_pattern(
std::variant<std::string_view, url_pattern_init> 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:
Expand Down
10 changes: 9 additions & 1 deletion src/parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -900,7 +900,7 @@ result_type parse_url_impl(std::string_view user_input,
}

template <>
tl::expected<url_pattern, url_pattern_errors> parse_url_pattern(
tl::expected<url_pattern, url_pattern_errors> parse_url_pattern_impl(
std::variant<std::string_view, url_pattern_init> input,
const std::string_view* base_url, const url_pattern_options* options) {
// Let init be null.
Expand Down Expand Up @@ -1084,3 +1084,11 @@ template url parse_url<url>(std::string_view user_input,
template url_aggregator parse_url<url_aggregator>(
std::string_view user_input, const url_aggregator* base_url = nullptr);
} // namespace ada::parser

namespace ada {
ada_warn_unused tl::expected<url_pattern, url_pattern_errors> parse_url_pattern(
std::variant<std::string_view, url_pattern_init> input,
const std::string_view* base_url, const url_pattern_options* options) {
return ada::parser::parse_url_pattern_impl<url_pattern>(std::move(input), base_url, options);
}
} // namespace ada
Loading