@@ -245,8 +245,7 @@ pub const HTMLAnchorElement = struct {
245
245
}
246
246
247
247
inline fn url (self : * parser.Anchor , page : * Page ) ! URL {
248
- const href = try parser .anchorGetHref (self );
249
- return URL .constructor (href , null , page ); // TODO inject base url
248
+ return URL .constructor (.{ .element = @ptrCast (self ) }, null , page ); // TODO inject base url
250
249
}
251
250
252
251
// TODO return a disposable string
@@ -391,23 +390,16 @@ pub const HTMLAnchorElement = struct {
391
390
try parser .anchorSetHref (self , href );
392
391
}
393
392
394
- // TODO return a disposable string
395
393
pub fn get_search (self : * parser.Anchor , page : * Page ) ! []const u8 {
396
394
var u = try url (self , page );
397
395
return try u .get_search (page );
398
396
}
399
397
400
398
pub fn set_search (self : * parser.Anchor , v : ? []const u8 , page : * Page ) ! void {
401
- const arena = page .arena ;
402
399
var u = try url (self , page );
400
+ try u .set_search (v , page );
403
401
404
- if (v ) | vv | {
405
- u .uri .query = .{ .raw = vv };
406
- } else {
407
- u .uri .query = null ;
408
- }
409
- const href = try u .toString (arena );
410
-
402
+ const href = try u .toString (page .call_arena );
411
403
try parser .anchorSetHref (self , href );
412
404
}
413
405
0 commit comments