summaryrefslogtreecommitdiff
path: root/include/uriparser/Uri.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/uriparser/Uri.h')
-rw-r--r--include/uriparser/Uri.h25
1 files changed, 23 insertions, 2 deletions
diff --git a/include/uriparser/Uri.h b/include/uriparser/Uri.h
index bb5b684..4a18580 100644
--- a/include/uriparser/Uri.h
+++ b/include/uriparser/Uri.h
@@ -347,7 +347,7 @@ const URI_CHAR * URI_FUNC(UnescapeInPlace)(URI_CHAR * inout);
* @param absoluteBase <b>IN</b>: Base %URI to apply
* @return Error code or 0 on success
*
- * @see uriRemoveBaseUriA
+ * @see uriRemoveBaseUriA, uriAddBaseUriExA
* @since 0.4.0
*/
int URI_FUNC(AddBaseUri)(URI_TYPE(Uri) * absoluteDest,
@@ -357,6 +357,27 @@ int URI_FUNC(AddBaseUri)(URI_TYPE(Uri) * absoluteDest,
/**
+ * Performs reference resolution as described in
+ * <a href="http://tools.ietf.org/html/rfc3986#section-5.2.2">section 5.2.2 of RFC 3986</a>.
+ * NOTE: On success you have to call uriFreeUriMembersA on \p absoluteDest manually later.
+ *
+ * @param absoluteDest <b>OUT</b>: Result %URI
+ * @param relativeSource <b>IN</b>: Reference to resolve
+ * @param absoluteBase <b>IN</b>: Base %URI to apply
+ * @param options <b>IN</b>: Configuration to apply
+ * @return Error code or 0 on success
+ *
+ * @see uriRemoveBaseUriA, uriAddBaseUriA
+ * @since 0.8.1
+ */
+int URI_FUNC(AddBaseUriEx)(URI_TYPE(Uri) * absoluteDest,
+ const URI_TYPE(Uri) * relativeSource,
+ const URI_TYPE(Uri) * absoluteBase,
+ UriResolutionOptions options);
+
+
+
+/**
* Tries to make a relative %URI (a reference) from an
* absolute %URI and a given base %URI. This can only work if
* the absolute %URI shares scheme and authority with
@@ -371,7 +392,7 @@ int URI_FUNC(AddBaseUri)(URI_TYPE(Uri) * absoluteDest,
* @param domainRootMode <b>IN</b>: Create %URI with path relative to domain root
* @return Error code or 0 on success
*
- * @see uriAddBaseUriA
+ * @see uriAddBaseUriA, uriAddBaseUriExA
* @since 0.5.2
*/
int URI_FUNC(RemoveBaseUri)(URI_TYPE(Uri) * dest,