aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-07-01Allow HEXDIG to include lower-case 'a'..'f'Richard Walters
2018-07-01Add NormalizeCaseInsensitiveString functionRichard Walters
2018-07-01IsCharacterInSet: fix documentationRichard Walters
2018-07-01RefactoringRichard Walters
Added CharacterSet as a class to represent character sets, allowing us to build singletons and composite character sets more concisely.
2018-07-01RefactoringRichard Walters
* Extract IsCharacterInSet to its own module. * Extract PercentEncodedCharacterDecoder to its own module.
2018-07-01RefactoringRichard Walters
Remove state 3 hole in host/port parsing state machine
2018-07-01RefactoringRichard Walters
Extract percent-encoded character decoding, so that the logic is all in one class that is reused.
2018-07-01Added missing documentationRichard Walters
2018-07-01Check for illegal characters in query and fragment elementsRichard Walters
2018-07-01Check for illegal characters in path segmentsRichard Walters
2018-07-01Fix second bug in scheme delimiter searchingRichard Walters
Path may also have colon, so make sure we don't scan into the path element if there is one.
2018-07-01Handle bad host namesRichard Walters
* Detect bad characters in host names. * Incorporate splitting host and port into the state machine that is parsing/decoding the host. NOTE: IPv6address is not checked for bad characters yet. More research is needed to learn exactly what are the various ways to write an IPv6 address.
2018-07-01Fix bug in parsing schemeRichard Walters
A colon may be in the authority, if present, so limit the search for scheme delimiter so we aren't scanning the authority part, when parsing the scheme.
2018-07-01Handle bad characters in UserInfoRichard Walters
2018-06-30RefactoringRichard Walters
Extracted IsCharacterInSet function
2018-06-30Add code to check that scheme, if present, is legalRichard Walters
2018-06-30RefactoringRichard Walters
Extract method ParseAuthority
2018-06-30RefactoringRichard Walters
Extract method that parses the path segments from the whole path string.
2018-06-30RefactoringRichard Walters
* Extract function that parses 16-bit unsigned integers, to use in parsing port element. * Clean up and clarify what parts of the original URI string are still being held onto at various points in the code.
2018-06-30Fix bug in not clearing userInfo when there is no authorityRichard Walters
2018-06-30Add more element parsing of URIsRichard Walters
* Add IsRelativeReference. * Add IsRelativePath. * Add Query. * Add Fragment. * Add UserInfo. * Fix parsing of URIs that have no scheme.
2018-06-30Add support for port and hasPort elementsRichard Walters
2018-06-30Uri: fix mistakes from last sessionRichard Walters
* Parts of a path are called "segments", not "steps", in the RFC. * The RFC specifies that path separators are always forward slashes, so don't support other separators.
2018-06-30Kick off Uri componentRichard Walters
* Can now parse URIs from strings. * This supports scheme, host, and path. * Path separator defaults to "/" but may be customized.
2018-06-03Add notes.mdRichard Walters
2018-06-02README.md: Fix markdown lint issuesRichard Walters
2018-06-02Initial Revision.Richard Walters