Packages

Jan Henry Nystrom's standard library,CBOR, HPACK, JSON, MessagePack, Syslog, URI, IP address, Timestamp, UUID,TypeID,prefix/range/T-trees, Bloom filters, HTTP client, Magic, Mustache rendering, mocking, cacerts, media type determination, snappy compression, Base32(hex, Geohash, Crockford, Clockwo...

Current section

Files

Jump to
jhn_stdlib include uri.hrl
Raw

include/uri.hrl

%% -*-erlang-*-
%%==============================================================================
%% Copyright 2015-2026 Jan Henry Nystrom <JanHenryNystrom@gmail.com>
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%==============================================================================
%% Types
-type scheme() :: http | https | file | sip | sips | mailto | ws | wss |
atom().
%% Records
-record(uri, {scheme :: undefined | scheme(),
userinfo = [] :: [binary()],
host :: undefined | binary() | inet:ip_address(),
port :: undefined | inet:port_number(),
path = [] :: [binary()],
query = <<>> :: binary(),
fragment = <<>> :: binary()
}).