ClickHouse/dbms/Common/parseAddress.h

23 lines
614 B
C++
Raw Normal View History

2017-12-28 04:28:05 +00:00
#pragma once
#include <string>
#include <map>
#include <common/types.h>
2017-12-28 04:28:05 +00:00
namespace DB
{
/** Parse address from string, that can contain host with or without port.
* If port was not specified and default_port is not zero, default_port is used.
* Otherwise, an exception is thrown.
*
* Examples:
* yandex.ru - returns "yandex.ru" and default_port
* yandex.ru:80 - returns "yandex.ru" and 80
* [2a02:6b8:a::a]:80 - returns [2a02:6b8:a::a] and 80; note that square brackets remain in returned host.
*/
std::pair<std::string, UInt16> parseAddress(const std::string & str, UInt16 default_port);
}