Index: runtime/vm/uri.h |
diff --git a/runtime/vm/uri.h b/runtime/vm/uri.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..453b3717f78dfdfd98b3e5cf32ba14374f97afc5 |
--- /dev/null |
+++ b/runtime/vm/uri.h |
@@ -0,0 +1,33 @@ |
+// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+#ifndef VM_URI_H_ |
+#define VM_URI_H_ |
+ |
+#include "platform/utils.h" |
+#include "vm/globals.h" |
+ |
+namespace dart { |
+ |
+struct ParsedUri { |
+ const char* scheme; |
+ const char* userinfo; |
+ const char* host; |
+ const char* port; |
+ const char* path; |
+ const char* query; |
+ const char* fragment; |
+}; |
+ |
+// Parses a uri into its parts. Returns false if the parse fails. |
+bool ParseUri(const char* uri, ParsedUri* parsed_uri); |
+ |
+// Resolves some reference uri with respect to a base uri. |
+bool ResolveUri(const char* ref_uri, |
+ const char* base_uri, |
+ const char** target_uri); |
+ |
+} // namespace dart |
+ |
+#endif // VM_URI_H_ |