# File lib/uri/generic.rb, line 810def check_path(v)# raise if both hier and opaque are not nil, because:# absoluteURI = scheme ":" ( hier_part | opaque_part )# hier_part = ( net_path | abs_path ) [ "?" query ]ifv&&@opaqueraiseInvalidURIError,"path conflicts with opaque"end# If scheme is ftp, path may be relative.# See RFC 1738 section 3.2.2, and RFC 2396.if@scheme&&@scheme!="ftp"ifv&&v!=''&&parser.regexp[:ABS_PATH]!~vraiseInvalidComponentError,"bad component(expected absolute path component): #{v}"endelseifv&&v!=''&&parser.regexp[:ABS_PATH]!~v&&parser.regexp[:REL_PATH]!~vraiseInvalidComponentError,"bad component(expected relative path component): #{v}"endendreturntrueend