Query String Parser

Summary

Add query string parsing utilities for key-value extraction.

Requirements

  • Parse query string into key-value pairs
  • Handle URL-encoded values
  • Handle multiple values for same key
  • Handle array notation (key[]=value)
  • Iterator interface for memory efficiency

Example API

const uri_result = try uri.parse("http://example.com?a=1&b=2&c=3");
var iter = uri.queryIterator(uri_result.query.?);
while (iter.next()) |param| {
    // param.key, param.value
}

Acceptance Criteria

  • Correct parsing of standard query strings
  • Handles edge cases (empty values, special chars)
  • Tests for various query formats