mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 03:47:35 +00:00
AK: Add typdefs for host URL definitions
And use them where applicable. This will allow us to store the host in the deserialized format as the spec specifies. Ideally these typdefs would instead be the existing AK interfaces, but in the meantime, we can just use this.
This commit is contained in:
parent
3dd3120a8a
commit
0c0117fc86
2 changed files with 20 additions and 4 deletions
16
AK/URL.h
16
AK/URL.h
|
@ -54,6 +54,22 @@ public:
|
|||
{
|
||||
}
|
||||
|
||||
// https://url.spec.whatwg.org/#concept-ipv4
|
||||
// An IPv4 address is a 32-bit unsigned integer that identifies a network address. [RFC791]
|
||||
// FIXME: It would be nice if this were an AK::IPv4Address
|
||||
using IPv4Address = u32;
|
||||
|
||||
// https://url.spec.whatwg.org/#concept-ipv6
|
||||
// An IPv6 address is a 128-bit unsigned integer that identifies a network address. For the purposes of this standard
|
||||
// it is represented as a list of eight 16-bit unsigned integers, also known as IPv6 pieces. [RFC4291]
|
||||
// FIXME: It would be nice if this were an AK::IPv6Address
|
||||
using IPv6Address = Array<u16, 8>;
|
||||
|
||||
// https://url.spec.whatwg.org/#concept-host
|
||||
// A host is a domain, an IP address, an opaque host, or an empty host. Typically a host serves as a network address,
|
||||
// but it is sometimes used as opaque identifier in URLs where a network address is not necessary.
|
||||
using Host = Variant<IPv4Address, IPv6Address, String, Empty>;
|
||||
|
||||
bool is_valid() const { return m_valid; }
|
||||
|
||||
enum class ApplyPercentDecoding {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue