Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1599)

Unified Diff: url/url_parse.h

Issue 15805003: Make the copy of GURL in src/url buildable as a component build. (try 2) (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« url/url_export.h ('K') | « url/url_export.h ('k') | url/url_util.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: url/url_parse.h
===================================================================
--- url/url_parse.h (revision 202256)
+++ url/url_parse.h (working copy)
@@ -9,6 +9,7 @@
#include "base/basictypes.h"
#include "base/string16.h"
+#include "url/url_export.h"
namespace url_parse {
@@ -80,7 +81,7 @@
// else
// url_parse::ParsePathURL(url, url_len, &parsed);
//
-struct Parsed {
+struct URL_EXPORT Parsed {
// Identifies different components.
enum ComponentType {
SCHEME,
@@ -134,8 +135,7 @@
// *QUERY: 14 15 <-
// *REF: 20 20
//
- int CountCharactersBefore(ComponentType type,
- bool include_delimiter) const;
+ int CountCharactersBefore(ComponentType type, bool include_delimiter) const;
// Scheme without the colon: "http://foo"/ would have a scheme of "http".
// The length will be -1 if no scheme is specified ("foo.com"), or 0 if there
@@ -220,32 +220,36 @@
// StandardURL is for when the scheme is known to be one that has an
// authority (host) like "http". This function will not handle weird ones
// like "about:" and "javascript:", or do the right thing for "file:" URLs.
-void ParseStandardURL(const char* url, int url_len, Parsed* parsed);
-void ParseStandardURL(const char16* url, int url_len, Parsed* parsed);
+URL_EXPORT void ParseStandardURL(const char* url,
+ int url_len,
+ Parsed* parsed);
+URL_EXPORT void ParseStandardURL(const char16* url,
+ int url_len,
+ Parsed* parsed);
// PathURL is for when the scheme is known not to have an authority (host)
// section but that aren't file URLs either. The scheme is parsed, and
// everything after the scheme is considered as the path. This is used for
// things like "about:" and "javascript:"
-void ParsePathURL(const char* url, int url_len, Parsed* parsed);
-void ParsePathURL(const char16* url, int url_len, Parsed* parsed);
+URL_EXPORT void ParsePathURL(const char* url, int url_len, Parsed* parsed);
+URL_EXPORT void ParsePathURL(const char16* url, int url_len, Parsed* parsed);
// FileURL is for file URLs. There are some special rules for interpreting
// these.
-void ParseFileURL(const char* url, int url_len, Parsed* parsed);
-void ParseFileURL(const char16* url, int url_len, Parsed* parsed);
+URL_EXPORT void ParseFileURL(const char* url, int url_len, Parsed* parsed);
+URL_EXPORT void ParseFileURL(const char16* url, int url_len, Parsed* parsed);
// Filesystem URLs are structured differently than other URLs.
-void ParseFileSystemURL(const char* url,
- int url_len,
- Parsed* parsed);
-void ParseFileSystemURL(const char16* url,
- int url_len,
- Parsed* parsed);
+URL_EXPORT void ParseFileSystemURL(const char* url,
+ int url_len,
+ Parsed* parsed);
+URL_EXPORT void ParseFileSystemURL(const char16* url,
+ int url_len,
+ Parsed* parsed);
// MailtoURL is for mailto: urls. They are made up scheme,path,query
-void ParseMailtoURL(const char* url, int url_len, Parsed* parsed);
-void ParseMailtoURL(const char16* url, int url_len, Parsed* parsed);
+URL_EXPORT void ParseMailtoURL(const char* url, int url_len, Parsed* parsed);
+URL_EXPORT void ParseMailtoURL(const char16* url, int url_len, Parsed* parsed);
// Helper functions -----------------------------------------------------------
@@ -269,27 +273,31 @@
// end of the string).
//
// The 8-bit version requires UTF-8 encoding.
-bool ExtractScheme(const char* url, int url_len, Component* scheme);
-bool ExtractScheme(const char16* url, int url_len, Component* scheme);
+URL_EXPORT bool ExtractScheme(const char* url,
+ int url_len,
+ Component* scheme);
+URL_EXPORT bool ExtractScheme(const char16* url,
+ int url_len,
+ Component* scheme);
// Returns true if ch is a character that terminates the authority segment
// of a URL.
-bool IsAuthorityTerminator(char16 ch);
+URL_EXPORT bool IsAuthorityTerminator(char16 ch);
// Does a best effort parse of input |spec|, in range |auth|. If a particular
// component is not found, it will be set to invalid.
-void ParseAuthority(const char* spec,
- const Component& auth,
- Component* username,
- Component* password,
- Component* hostname,
- Component* port_num);
-void ParseAuthority(const char16* spec,
- const Component& auth,
- Component* username,
- Component* password,
- Component* hostname,
- Component* port_num);
+URL_EXPORT void ParseAuthority(const char* spec,
+ const Component& auth,
+ Component* username,
+ Component* password,
+ Component* hostname,
+ Component* port_num);
+URL_EXPORT void ParseAuthority(const char16* spec,
+ const Component& auth,
+ Component* username,
+ Component* password,
+ Component* hostname,
+ Component* port_num);
// Computes the integer port value from the given port component. The port
// component should have been identified by one of the init functions on
@@ -298,8 +306,8 @@
// The return value will be a positive integer between 0 and 64K, or one of
// the two special values below.
enum SpecialPort { PORT_UNSPECIFIED = -1, PORT_INVALID = -2 };
-int ParsePort(const char* url, const Component& port);
-int ParsePort(const char16* url, const Component& port);
+URL_EXPORT int ParsePort(const char* url, const Component& port);
+URL_EXPORT int ParsePort(const char16* url, const Component& port);
// Extracts the range of the file name in the given url. The path must
// already have been computed by the parse function, and the matching URL
@@ -311,12 +319,12 @@
// following the last slash.
//
// The 8-bit version requires UTF-8 encoding.
-void ExtractFileName(const char* url,
- const Component& path,
- Component* file_name);
-void ExtractFileName(const char16* url,
- const Component& path,
- Component* file_name);
+URL_EXPORT void ExtractFileName(const char* url,
+ const Component& path,
+ Component* file_name);
+URL_EXPORT void ExtractFileName(const char16* url,
+ const Component& path,
+ Component* file_name);
// Extract the first key/value from the range defined by |*query|. Updates
// |*query| to start at the end of the extracted key/value pair. This is
@@ -333,14 +341,14 @@
//
// If no key/value are found |*key| and |*value| will be unchanged and it will
// return false.
-bool ExtractQueryKeyValue(const char* url,
- Component* query,
- Component* key,
- Component* value);
-bool ExtractQueryKeyValue(const char16* url,
- Component* query,
- Component* key,
- Component* value);
+URL_EXPORT bool ExtractQueryKeyValue(const char* url,
+ Component* query,
+ Component* key,
+ Component* value);
+URL_EXPORT bool ExtractQueryKeyValue(const char16* url,
+ Component* query,
+ Component* key,
+ Component* value);
} // namespace url_parse
« url/url_export.h ('K') | « url/url_export.h ('k') | url/url_util.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698