docs: explain why squash merges are broken with long-running branches
[git] / url.h
1 #ifndef URL_H
2 #define URL_H
3
4 struct strbuf;
5
6 int is_url(const char *url);
7 int is_urlschemechar(int first_flag, int ch);
8 char *url_decode(const char *url);
9 char *url_decode_mem(const char *url, int len);
10
11 /*
12  * Similar to the url_decode_{,mem} methods above, but doesn't assume there
13  * is a scheme followed by a : at the start of the string. Instead, %-sequences
14  * before any : are also parsed.
15  */
16 char *url_percent_decode(const char *encoded);
17
18 char *url_decode_parameter_name(const char **query);
19 char *url_decode_parameter_value(const char **query);
20
21 void end_url_with_slash(struct strbuf *buf, const char *url);
22 void str_end_url_with_slash(const char *url, char **dest);
23
24 #endif /* URL_H */