@@ -22,7 +22,7 @@ local IPv6address = require "lpeg_patterns.IPv6".IPv6address
2222
2323local _M = {}
2424
25- local sub_delims = S " !$&'()*+,;=" -- 2.2
25+ _M . sub_delims = S " !$&'()*+,;=" -- 2.2
2626local unreserved = ALPHA + DIGIT + S " -._~" -- 2.3
2727_M .pct_encoded = P " %" * (HEXDIG * HEXDIG / util .read_hex ) / function (n )
2828 local c = string.char (n )
@@ -37,7 +37,7 @@ end -- 2.1
3737
3838_M .scheme = ALPHA * (ALPHA + DIGIT + S " +-." )^ 0 / string.lower -- 3.1
3939
40- _M .userinfo = Cs ((unreserved + _M .pct_encoded + sub_delims + P " :" )^ 0 ) -- 3.2.1
40+ _M .userinfo = Cs ((unreserved + _M .pct_encoded + _M . sub_delims + P " :" )^ 0 ) -- 3.2.1
4141
4242-- Host 3.2.2
4343
4848local function new_IPvFuture (version , string )
4949 return setmetatable ({version = version , string = string }, IPvFuture_mt )
5050end
51- local IPvFuture = S " vV" * (HEXDIG ^ 1 / util .read_hex ) * P " ." * C ((unreserved + sub_delims + P " :" )^ 1 ) / new_IPvFuture
51+ local IPvFuture = S " vV" * (HEXDIG ^ 1 / util .read_hex ) * P " ." * C ((unreserved + _M . sub_delims + P " :" )^ 1 ) / new_IPvFuture
5252
5353-- RFC 6874
5454local ZoneID = Cs ((unreserved + _M .pct_encoded )^ 1 )
5959
6060local IP_literal = P " [" * ( IPv6addrz + IPvFuture ) * P " ]"
6161local IP_host = ( IP_literal + IPv4address ) / tostring
62- local host_char = unreserved / string.lower + _M .pct_encoded + sub_delims
62+ local host_char = unreserved / string.lower + _M .pct_encoded + _M . sub_delims
6363local reg_name = Cs ( host_char ^ 1 ) + Cc ( nil )
6464_M .host = IP_host + reg_name
6565
6666_M .port = DIGIT ^ 0 / tonumber -- 3.2.3
6767
6868-- Path 3.3
69- local pchar = unreserved + _M .pct_encoded + sub_delims + S " :@"
69+ local pchar = unreserved + _M .pct_encoded + _M . sub_delims + S " :@"
7070local segment = pchar ^ 0
7171_M .segment = Cs (segment )
7272local segment_nz = pchar ^ 1
0 commit comments