Crate uriparser_sys

Crate uriparser_sys 

Source

Re-exports§

pub use self::UriBreakConversionEnum as UriBreakConversion;
pub use self::UriResolutionOptionsEnum as UriResolutionOptions;

Structs§

UriHostDataStructA
Holds structured host information. This is either a IPv4, IPv6, plain text for IPvFuture or all zero for a registered name.
UriIp4Struct
Holds an IPv4 address.
UriIp6Struct
Holds an IPv6 address.
UriMemoryManagerStruct
Class-like interface of custom memory managers
UriParserStateStructA
Represents a state of the %URI parser. Missing components can be NULL to reflect a components absence.
UriPathSegmentStructA
Represents a path segment within a %URI path. More precisely it is a node in a linked list of path segments.
UriQueryListStructA
Represents a query element. More precisely it is a node in a linked list of query elements.
UriTextRangeStructA
Specifies a range of characters within a string. The range includes all characters from first to one before afterLast. So if both are non-NULL the difference is the length of the text range.
UriUriStructA
Represents an RFC 3986 %URI. Missing components can be {NULL, NULL} ranges.

Constants§

URI_BASE_H
URI_DEFS_CONFIG_H
URI_ENABLE_ANSI
URI_ENABLE_UNICODE
URI_ERROR_ADDBASE_REL_BASE
URI_ERROR_MALLOC
URI_ERROR_MEMORY_MANAGER_FAULTY
URI_ERROR_MEMORY_MANAGER_INCOMPLETE
URI_ERROR_NOT_IMPLEMENTED
URI_ERROR_NULL
URI_ERROR_OUTPUT_TOO_LARGE
URI_ERROR_RANGE_INVALID
URI_ERROR_REMOVEBASE_REL_BASE
URI_ERROR_REMOVEBASE_REL_SOURCE
URI_ERROR_SYNTAX
URI_ERROR_TOSTRING_TOO_LONG
URI_FALSE
URI_H_ANSI
URI_H_UNICODE
URI_PASS_ANSI
URI_PASS_UNICODE
URI_SUCCESS
URI_TRUE
URI_VER_MAJOR
URI_VER_MINOR
URI_VER_RELEASE
URI_VER_SUFFIX_ANSI
UriBreakConversionEnum_URI_BR_DONT_TOUCH
< Copy line breaks unmodified
UriBreakConversionEnum_URI_BR_TO_CR
< Convert to Macintosh line breaks (“\x0d”)
UriBreakConversionEnum_URI_BR_TO_CRLF
< Convert to Windows line breaks (“\x0d\x0a”)
UriBreakConversionEnum_URI_BR_TO_LF
< Convert to Unix line breaks (“\x0a”)
UriBreakConversionEnum_URI_BR_TO_MAC
< @copydoc UriBreakConversionEnum::URI_BR_TO_CR
UriBreakConversionEnum_URI_BR_TO_UNIX
< @copydoc UriBreakConversionEnum::URI_BR_TO_LF
UriBreakConversionEnum_URI_BR_TO_WINDOWS
< @copydoc UriBreakConversionEnum::URI_BR_TO_CRLF
UriResolutionOptionsEnum_URI_RESOLVE_IDENTICAL_SCHEME_COMPAT
< Treat %URI to resolve with identical scheme as having no scheme
UriResolutionOptionsEnum_URI_RESOLVE_STRICTLY
< Full RFC conformance

Functions§

uriAddBaseUriA
Performs reference resolution as described in section 5.2.2 of RFC 3986. Uses default libc-based memory manager. NOTE: On success you have to call uriFreeUriMembersA on \p absoluteDest manually later.
uriAddBaseUriExA
Performs reference resolution as described in section 5.2.2 of RFC 3986. Uses default libc-based memory manager. NOTE: On success you have to call uriFreeUriMembersA on \p absoluteDest manually later.
uriAddBaseUriExMmA
Performs reference resolution as described in section 5.2.2 of RFC 3986. NOTE: On success you have to call uriFreeUriMembersMmA on \p absoluteDest manually later.
uriComposeQueryA
Converts a query list structure back to a query string. The composed string does not start with ‘?’, on the way ’ ’ is converted to ‘+’ and line breaks are normalized to “%0D%0A”.
uriComposeQueryCharsRequiredA
Calculates the number of characters needed to store the string representation of the given query list excluding the terminator. It is assumed that line breaks are will be normalized to “%0D%0A”.
uriComposeQueryCharsRequiredExA
Calculates the number of characters needed to store the string representation of the given query list excluding the terminator.
uriComposeQueryExA
Converts a query list structure back to a query string. The composed string does not start with ‘?’.
uriComposeQueryMallocA
Converts a query list structure back to a query string. Memory for this string is allocated internally. The composed string does not start with ‘?’, on the way ’ ’ is converted to ‘+’ and line breaks are normalized to “%0D%0A”. Uses default libc-based memory manager.
uriComposeQueryMallocExA
Converts a query list structure back to a query string. Memory for this string is allocated internally. The composed string does not start with ‘?’. Uses default libc-based memory manager.
uriComposeQueryMallocExMmA
Converts a query list structure back to a query string. Memory for this string is allocated internally. The composed string does not start with ‘?’.
uriDissectQueryMallocA
Constructs a query list from the raw query string of a given URI. On the way ‘+’ is converted back to ’ ’, line breaks are not modified. Uses default libc-based memory manager.
uriDissectQueryMallocExA
Constructs a query list from the raw query string of a given URI. Uses default libc-based memory manager.
uriDissectQueryMallocExMmA
Constructs a query list from the raw query string of a given URI.
uriEqualsUriA
Checks two URIs for equivalence. Comparison is done the naive way, without prior normalization. NOTE: Two NULL URIs are equal as well.
uriEscapeA
Percent-encodes all unreserved characters from the input string and writes the encoded version to the output string. Be sure to allocate 3 times the space of the input buffer for the output buffer for normalizeBreaks == URI_FALSE and 6 times the space for normalizeBreaks == URI_TRUE (since e.g. “\x0d” becomes “%0D%0A” in that case)
uriEscapeExA
Percent-encodes all unreserved characters from the input string and writes the encoded version to the output string. Be sure to allocate 3 times the space of the input buffer for the output buffer for normalizeBreaks == URI_FALSE and 6 times the space for normalizeBreaks == URI_TRUE (since e.g. “\x0d” becomes “%0D%0A” in that case)
uriFreeQueryListA
Frees all memory associated with the given query list. The structure itself is freed as well.
uriFreeQueryListMmA
Frees all memory associated with the given query list. The structure itself is freed as well.
uriFreeUriMembersA
Frees all memory associated with the members of the %URI structure. Note that the structure itself is not freed, only its members. Uses default libc-based memory manager.
uriFreeUriMembersMmA
Frees all memory associated with the members of the %URI structure. Note that the structure itself is not freed, only its members.
uriMakeOwnerA
Makes the %URI hold copies of strings so that it no longer depends on the original %URI string. If the %URI is already owner of copies, this function returns URI_TRUE and does not modify the %URI further.
uriMakeOwnerMmA
Makes the %URI hold copies of strings so that it no longer depends on the original %URI string. If the %URI is already owner of copies, this function returns URI_TRUE and does not modify the %URI further.
uriNormalizeSyntaxA
Normalizes all components of a %URI.
uriNormalizeSyntaxExA
Normalizes a %URI using a normalization mask. The normalization mask decides what components are normalized.
uriNormalizeSyntaxExMmA
Normalizes a %URI using a normalization mask. The normalization mask decides what components are normalized.
uriNormalizeSyntaxMaskRequiredA
Determines the components of a %URI that are not normalized.
uriNormalizeSyntaxMaskRequiredExA
Determines the components of a %URI that are not normalized.
uriParseSingleUriA
Parses a single RFC 3986 %URI. Uses default libc-based memory manager.
uriParseSingleUriExA
Parses a single RFC 3986 %URI. Uses default libc-based memory manager.
uriParseSingleUriExMmA
Parses a single RFC 3986 %URI.
uriParseUriA
Parses a RFC 3986 %URI. Uses default libc-based memory manager.
uriParseUriExA
Parses a RFC 3986 %URI. Uses default libc-based memory manager.
uriRemoveBaseUriA
Tries to make a relative %URI (a reference) from an absolute %URI and a given base %URI. The resulting %URI is going to be relative if the absolute %URI and base %UI share both scheme and authority. If that is not the case, the result will still be an absolute URI (with scheme part if necessary). Uses default libc-based memory manager. NOTE: On success you have to call uriFreeUriMembersA on \p dest manually later.
uriRemoveBaseUriMmA
Tries to make a relative %URI (a reference) from an absolute %URI and a given base %URI. The resulting %URI is going to be relative if the absolute %URI and base %UI share both scheme and authority. If that is not the case, the result will still be an absolute URI (with scheme part if necessary). NOTE: On success you have to call uriFreeUriMembersMmA on \p dest manually later.
uriToStringA
Converts a %URI structure back to text as described in section 5.3 of RFC 3986.
uriToStringCharsRequiredA
Calculates the number of characters needed to store the string representation of the given %URI excluding the terminator.
uriUnescapeInPlaceA
Unescapes percent-encoded groups in a given string. E.g. “%20” will become “ “. Unescaping is done in place. The return value will be point to the new position of the terminating zero. Use this value to get the new length of the string. NULL is only returned if inout is NULL.
uriUnescapeInPlaceExA
Unescapes percent-encoded groups in a given string. E.g. “%20” will become “ “. Unescaping is done in place. The return value will be point to the new position of the terminating zero. Use this value to get the new length of the string. NULL is only returned if inout is NULL.
uriUnixFilenameToUriStringA
Converts a Unix filename to a %URI string. The destination buffer must be large enough to hold 7 + 3 * len(filename) + 1 characters in case of an absolute filename or 3 * len(filename) + 1 in case of a relative filename.
uriUriStringToUnixFilenameA
Extracts a Unix filename from a %URI string. The destination buffer must be large enough to hold len(uriString) + 1 - 7 characters in case of an absolute %URI or len(uriString) + 1 in case of a relative %URI.
uriUriStringToWindowsFilenameA
Extracts a Windows filename from a %URI string. The destination buffer must be large enough to hold len(uriString) + 1 - 5 characters in case of an absolute %URI or len(uriString) + 1 in case of a relative %URI.
uriWindowsFilenameToUriStringA
Converts a Windows filename to a %URI string. The destination buffer must be large enough to hold 8 + 3 * len(filename) + 1 characters in case of an absolute filename or 3 * len(filename) + 1 in case of a relative filename.

Type Aliases§

UriBool
UriBreakConversionEnum
Specifies a line break conversion mode.
UriFuncCalloc
Function signature that custom calloc(3) functions must conform to
UriFuncFree
Function signature that custom free(3) functions must conform to
UriFuncMalloc
Function signature that custom malloc(3) functions must conform to
UriFuncRealloc
Function signature that custom realloc(3) functions must conform to
UriFuncReallocarray
Function signature that custom reallocarray(3) functions must conform to
UriHostDataA
Holds structured host information. This is either a IPv4, IPv6, plain text for IPvFuture or all zero for a registered name.
UriIp4
Holds an IPv4 address.
UriIp6
Holds an IPv6 address.
UriMemoryManager
Class-like interface of custom memory managers
UriParserStateA
Represents a state of the %URI parser. Missing components can be NULL to reflect a components absence.
UriPathSegmentA
Represents a path segment within a %URI path. More precisely it is a node in a linked list of path segments.
UriQueryListA
Represents a query element. More precisely it is a node in a linked list of query elements.
UriResolutionOptionsEnum
Specifies how to resolve %URI references.
UriTextRangeA
Specifies a range of characters within a string. The range includes all characters from first to one before afterLast. So if both are non-NULL the difference is the length of the text range.
UriUriA
Represents an RFC 3986 %URI. Missing components can be {NULL, NULL} ranges.
size_t