31   INLINE 
URLSpec(
const std::string &url, 
bool server_name_expected = 
false);
    33   INLINE 
void operator = (
const std::string &url);
    35   INLINE 
bool operator == (
const URLSpec &other) 
const;
    36   INLINE 
bool operator != (
const URLSpec &other) 
const;
    37   INLINE 
bool operator < (
const URLSpec &other) 
const;
    39   size_t get_hash() 
const;
    41   INLINE 
bool has_scheme() 
const;
    42   INLINE 
bool has_authority() 
const;
    43   INLINE 
bool has_username() 
const;
    44   INLINE 
bool has_server() 
const;
    45   INLINE 
bool has_port() 
const;
    46   INLINE 
bool has_path() 
const;
    47   INLINE 
bool has_query() 
const;
    49   std::string get_scheme() 
const;
    50   INLINE std::string get_authority() 
const;
    51   INLINE std::string get_username() 
const;
    52   INLINE std::string get_server() 
const;
    53   INLINE std::string get_port_str() 
const;
    54   uint16_t get_port() 
const;
    55   std::string get_server_and_port() 
const;
    56   bool is_default_port() 
const;
    57   static int get_default_port_for_scheme(
const std::string &scheme);
    58   std::string get_path() 
const;
    59   INLINE std::string get_query() 
const;
    60   std::string get_path_and_query() 
const;
    61   INLINE 
bool is_ssl() 
const;
    63   INLINE 
const std::string &get_url() 
const;
    65   void set_scheme(
const std::string &scheme);
    66   void set_authority(
const std::string &authority);
    67   void set_username(
const std::string &username);
    68   void set_server(
const std::string &server);
    69   void set_port(
const std::string &port);
    70   void set_port(uint16_t port);
    71   void set_server_and_port(
const std::string &server_and_port);
    72   void set_path(
const std::string &path);
    73   void set_query(
const std::string &query);
    75   void set_url(
const std::string &url, 
bool server_name_expected = 
false);
    77   INLINE 
operator const std::string & () 
const;
    78   INLINE 
const char *c_str() 
const;
    79   INLINE 
bool empty() 
const;
    80   INLINE 
operator bool() 
const;
    81   INLINE 
size_t length() 
const;
    82   INLINE 
size_t size() 
const;
    83   INLINE 
char operator [] (
size_t n) 
const;
    85   bool input(std::istream &in);
    86   void output(std::ostream &out) 
const;
    88   static std::string quote(
const std::string &source, 
const std::string &safe = 
"/");
    89   static std::string quote_plus(
const std::string &source, 
const std::string &safe = 
"/");
    90   static std::string unquote(
const std::string &source);
    91   static std::string unquote_plus(
const std::string &source);
    93   MAKE_PROPERTY(scheme, get_scheme, set_scheme);
    94   MAKE_PROPERTY(authority, get_authority, set_authority);
    95   MAKE_PROPERTY(username, get_username, set_username);
    96   MAKE_PROPERTY(server, get_server, set_server);
    97   MAKE_PROPERTY(port, get_port, set_port);
    98   MAKE_PROPERTY(server_and_port, get_server_and_port, set_server_and_port);
    99   MAKE_PROPERTY(path, get_path, set_path);
   100   MAKE_PROPERTY(query, get_query, set_query);
   101   MAKE_PROPERTY(ssl, is_ssl);
   104   void parse_authority();
   107     F_has_scheme     = 0x0001,
   108     F_has_authority  = 0x0002,
   109     F_has_username   = 0x0004,
   110     F_has_server     = 0x0008,
   113     F_has_query      = 0x0040,
   121   size_t _username_start;
   122   size_t _username_end;
   123   size_t _server_start;
   132 INLINE std::istream &operator >> (std::istream &in, 
URLSpec &url);
   133 INLINE std::ostream &operator << (std::ostream &out, 
const URLSpec &url);
 A container for a URL, e.g.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
The name of a file, such as a texture file or an Egg file.
An STL function object class, this is intended to be used on any ordered collection of class objects ...